【发布时间】:2023-02-20 23:53:40
【问题描述】:
在我的 spark aws 胶水作业中,使用 pyspark 在主函数中创建数据框。然后将此数据帧传递给函数,并在函数中对数据帧进行其他操作。但是在函数中出现错误 - TypeError: 'str' object is not callable
from pyspark.sql.functions import *
def generate_datafame(df_input):
df.show(10, False)
df = df.filter((col('sequenceNumber') != "") & (col('sequenceNumber').isNotNull())) -> getting error in this line
df.show(10, False)
if __name__ == '__main__':
# some code
df_input.show(10,False)
generate_datafame(df_input)
【问题讨论】:
-
col在哪里定义的? -
@PeterWood 我在脚本的开头添加了 import 语句。
-
请出示你的 python
imports -
@AlexChadyuk 我已经更新了问题
-
用你自己的话来说,代码写着
col('sequenceNumber'),你认为这应该是什么意思?col是什么,后面写('sequenceNumber')会发生什么?您似乎打算使用pyspark.sql.functions中的col函数,但我无法理解预期的推理。那是用来创建一个新的专栏对吧?因此,我们如何才能明智地对该列的内容进行任何测试?总体而言,您希望代码做什么?