我正在尝试使用groupBy和sum(使用PySpark 1.5)在Spark Dataframe中创建一个新列(“newaggCol”) . 我的数字列已经转换为Long或Double . 用于形成groupBy的列是String和Timestamp . 我的代码如下
df= df.withColumn("newaggCol",(df.groupBy([df.strCol,df.tsCol]).sum(df.longCol)))
我对该错误的回溯即将到来 . 并说明:
ValueError: Cannot convert column into bool: please use '&' for 'and', '|' for 'or', '~' for 'not' when building DataFrame boolean expressions.
我觉得我必须错误地调用这些函数?
1 回答
使用SQL聚合是不可能的,但您可以使用窗口函数轻松获得所需的结果