【发布时间】:2019-02-03 05:14:42
【问题描述】:
我有一个包含 4 列的 spark dataframe:
(col_1, col_2, col_3, col_4) ==> (String, String, Int, Int)
在数据中,有时col_3为空,例如:
col_1|col_2|col_3|col_4
col_1|col_2||col_4
在测试第 3 列和第 4 列之后,我想返回一个仅包含 3 列的新 dataframe:
如果col_3 为空,则返回col_4
否则返回col_3
为了解决这个问题,我这样做了:
>>>
>>> def calculcolumn(col_3, col_4):
... if (col_3 is None ):
... return col_4
... else:
... return col_3
...
>>>
>>> calculcolumn( ,12)
File "<stdin>", line 1
calculcolumn( ,12)
^
SyntaxError: invalid syntax
>>>
但它抛出SyntaxError,我该如何解决?
【问题讨论】:
-
您的代码在
def之前是否有空格?与其他流行语言不同,空格和制表符在 Python 中很重要。请确保您发布的内容与您尝试运行的代码相同。 -
@MooingRawr 谢谢我编辑了我的问题。
-
您希望
calculcolumn( ,12)做什么?这是一个SyntaxError,因为你不能忽略一个论点。你的意思是通过calculcolumn(None, 12)? -
@FHTMitchell 我有一个 spark 数据框
-
@FHTMitchell 我给你举了一个数据框结构的例子,有时col_3之间也是空的||
标签: python dataframe pyspark syntax-error