如何将字符串变量传递给数据框。在哪里()条件

2024-10-01 13:39:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我不确定在pyspark中这是否可能。我认为这应该是我在这里没有获胜。在

要求: 带来FNAME和LNAME为null或0的任何记录

预期结果: 结果是前两行。在

df = sqlContext.read.format('com.databricks.spark.csv').options(header='true').load(fileName)
df.show()

+------+-------+------+
| FNAME|  LNAME|  CITY|
+------+-------+------+
|     0|   null|    NY|
|  null|      0|  null|
|   Joe|   null|    LA|
|  null|   Deon|    SA|
| Steve|   Mark|  null|
+------+-------+------+

colCondition = []
for col in df.columns:
    condition = '(df.'+col+'.isNull() | df.'+col+' == 0)'
    colCondition.append(condition)

dfWhereConditon = ' & '.join(colList)

这就是我想要达到的目标:

^{pr2}$

这不起作用,因为dfWhereCondition在where条件中被视为字符串。我该如何解决这个问题,或者有更好的方法来实现这一点。在

谢谢


Tags: comformatdfread记录colconditionfname