Код: Выделить всё
from snowflake.snowpark import Window
data.withColumn("result", my_udf('column1', 'column2').over(Window.partitionBy('column3')))
Код: Выделить всё
def my_udf(data: pd.DataFrame):
...
Код: Выделить всё
import pandas as pd
from snowflake.snowpark import Session
from snowflake.snowpark.types import PandasDataFrame
class my_func:
def process(self, df: PandasDataFrame[int, int]) -> PandasDataFrame[int]:
return df[["col2"]]
process._sf_vectorized_input = pd.DataFrame
my_udtf = session.udtf.register(
my_func,
output_schema=["result"],
input_names=['"col1"', '"col2"']
)
data.withColumn(
"result",
my_udtf('col1', 'col2').over(Window.partitionBy("col3"))
)
Подробнее здесь: https://stackoverflow.com/questions/792 ... w-function