我正在尝试运行以下代码,这是基于我在网上找到的一些教程:
import pandas as pd
from pyspark.sql import SparkSession
from pyspark.sql import functions
from pyspark.sql import udf
df_pd = pd.DataFrame(
data={'integers': [1, 2, 3],
'floats': [-1.0, 0.5, 2.7],
'integer_arrays': [[1, 2], [3, 4, 5], [6, 7, 8, 9]]}
)
df = spark.createDataFrame(df_pd)
df.show()
def square(x):
return x**2
from pyspark.sql.types import IntegerType
square_udf_int = udf(lambda z: square(z), IntegerType())
但是当我运行最后一行时,我会收到以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
我正在使用Hadoop 2.7上的Spark 2.3.3。
谢谢
()
。 - paultudf
是一个模块,你不能直接调用它。你还期望发生什么以及为什么?你有查看相关文档吗? - Stop harming Monica