我是根据列的值按数据集分组的 mynewmeancol2
如下所示:
dF.select("col0","col1","col2","col3","col4").where("col1> mynewmeancol2")
.withColumn("avgCol1", avg("col1").over(Window.partitionBy("col0", "col1")))
我想知道如何传递一个列名数组(表示字符串列表)(而不仅仅是 col0
& col1
)至 partitionBy
?
编辑:我看到里面有这样的东西 partitionBy
:
partitionsColumnsList.map(col(_)):_*)
会在斯卡拉工作。但我需要它是java的。
谢谢
2条答案
按热度按时间9fkzdhlc1#
是的,你可以
unnest
数组并传递给partitionBy
条款。Example:
spark scala公司:vltsax252#
这是你如何通过,而不是
Arrays.stream(df.columns())
可以替换为字符串列表(列名)