gpt4 book ai didi

python - pyspark udf rlike条件是否错误

转载 作者:行者123 更新时间:2023-12-02 22:00:58 27 4
gpt4 key购买 nike

我正在使用Spark 2.1脚本是pyspark脚本

我的数据框如下

数据框名称:df

一种

纳文

Naveen123

现在我的输出应该是

一种

纳文

我为此使用下面的udf

def fn(a):
if((a==rlike("[0-9]"))|(a==' ')):
return s

df.withColumn("FLG",fn("a")).show()

我收到类似:global name'rlike'的错误

请帮助我克服这个障碍

最佳答案

您想要的filter而不是添加额外列的withColumn

如果您想严格按字母顺序排列:



import pyspark.sql.functions as psf
df = df.withColumn("isCharString", df.a.rlike("^[a-zA-Z]+$"))

如果要保留没有数字的字符串

df = df.withColumn("isCharString", ~df.a.rlike("[0-9]"))

使用函数时遇到的错误是因为您将 rlike用作独立函数,而不是独立函数,它是pyspark类的属性。要在spark中重写函数:

df = df.withColumn("isCharString", psf.when(
df.a.rlike("[0-9]")| (df.a == " "),
psf.lit("s")).otherwise(df.a))

关于python - pyspark udf rlike条件是否错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45849581/

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