Eda*_*ame 4 python lambda dataframe
我在 pyspark 数据框中有以下 udf 函数。代码工作正常,除非myFun1('oldColumn')
为空,我希望输出为空字符串而不是空。
myFun1 = udf(lambda x: myModule.myFunction1(x), StringType())
myDF = myDF.withColumn('newColumn', myFun1('oldColumn'))
Run Code Online (Sandbox Code Playgroud)
是否可以就地执行此操作而不是创建另一个 udf 函数?谢谢!
使用df.fillna()
或df.na.fill()
用空字符串替换空值对我有用。
您可以通过提供要替换空值的列和值作为参数来按列进行替换:
myDF = myDF.na.fill({'oldColumn': ''})
Run Code Online (Sandbox Code Playgroud)
Pyspark 文档有一个例子:
>>> df4.na.fill({'age': 50, 'name': 'unknown'}).show()
+---+------+-------+
|age|height| name|
+---+------+-------+
| 10| 80| Alice|
| 5| null| Bob|
| 50| null| Tom|
| 50| null|unknown|
+---+------+-------+
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8918 次 |
最近记录: |