gpt4 book ai didi

python - pyspark上这个函数有什么问题?

转载 作者:行者123 更新时间:2023-12-01 00:44:29 25 4
gpt4 key购买 nike

我有一个像下面这样的数据框,只有一列和一行,我想创建一个函数,用一些文本替换匹配的字符串。

df2 = pd.DataFrame([['_text1']],columns = ['my_texts'])
spark_df = spark.createDataFrame(df2)

def text_func(df, col):
return df.withColumn("origin_code", sparkSqlFunctions.when("my_texts".startswith('_text1') == True, 'text_passed')
.otherwise("my_texts"))

这个函数不知何故不起作用,并给我一个错误“数据框对象没有属性'text_func'”。

我这样调用它final = Spark_df.withColumn("my_texts", text_func(spark_df, "my_texts"))这可能是错误的。

谁能帮我解决这个问题吗?

最佳答案

在您的函数中,更改

"my_texts".startswith('_text1')

sparkSqlFunctions.col("my_texts").startswith('_text1') 

这可能是造成困惑的原因。这个对我有用。

通过此修改,我明确告诉 Spark 第一个 "my_texts" 是一列,而不是字符串。

您还可以从代码中删除==True

关于python - pyspark上这个函数有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57095416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com