gpt4 book ai didi

python - 如何过滤掉所有包含符号“的行

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:41 26 4
gpt4 key购买 nike

我想过滤掉“Col1”列中包含符号“的所有行。

Col1   Col2
11" A
0! Q
123456 A
252653 A
343535 A

预期结果:

Col1   Col2
123456 A
252653 A
343535 A

为此,我决定过滤掉所有非数字值:

def is_digit(value):
if value:
return value.isdigit()
else:
return False

is_digit_udf = udf(lambda value: is_digit(value), BooleanType())

df.filter(when(is_digit_udf(df["Col1"]))).show()

但是此代码失败并显示错误消息:

TypeError: when() missing 1 required positional argument: 'value'

最佳答案

when函数相当于sql中的case when。因此,它不能直接在过滤器中使用。你可以试试这个:

from pyspark.sql.functions import lit
df.filter(is_digit_udf(df["Col1"]))==lit(True)).show()

关于python - 如何过滤掉所有包含符号“的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56936404/

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