Я пытаюсь разработать собственное описание. Для этого я скомбинирую функции из pyspark.sql.functions с другими пользовательскими агрегированными функциями (UDAF) . Код выглядит так:
from pyspark.sql.functions import count
from pyspark.sql.functions import pandas_udf, PandasUDFType
from scipy.stats import entropy
# Define a UDAF
@pandas_udf("double", PandasUDFType.GROUPED_AGG)
def my_entropy(data):
p_data = data.value_counts() # counts occurrence of each value
s = entropy(p_data) # get entropy from counts
return s
# Perform a groupby-agg
groupby_col = "a_column"
agg_col = "another_column"
df2return = df\
.groupBy(groupby_cols)\
.agg(count(agg_col).alias("count"),
my_entropy(agg_col).alias("s"))
df2return.show()
Выдается очень длинная ошибка, поэтому я копирую только последнее возникшее исключение.
![y](https://i.stack.imgur.com/9SqJb.png)
Кто-нибудь знает, как это исправить?