我喜欢这样使用spark dataframe map聚合语法:
jaccardDf
.groupBy($"userId")
.agg(
"jaccardDistance"->"avg"
, "jaccardDistance"->"stddev_samp"
, "jaccardDistance"->"skewness"
, "jaccardDistance"->"kurtosis"
)
有没有一种方法可以在仍然使用Map语法的情况下对结果列使用别名?当我需要别名我这样做,而不是
jaccardDf
.groupBy($"userId")
.agg(
avg("jaccardDistance").alias("jaccardAvg")
,stddev_samp("jaccardDistance").alias("jaccardStddev")
,skewness("jaccardDistance").alias("jaccardSkewness")
,kurtosis("jaccardDistance").alias("jaccardKurtosis")
)
1条答案
按热度按时间izj3ouym1#
使用
.toDF()
为您定义的列表中的列名设置别名: