我希望找到将describe
函数应用于分组数据框的最清晰的方法(这个问题也可以扩展到将任何DF函数应用于分组DF)。
我尝试了分组聚合的pandas UDF,但没有成功。总有一种方法是通过在agg
函数中传递每个统计量来完成,但这不是正确的方法。
如果我们有一个示例数据框:
df = spark.createDataFrame(
[(1, 1.0), (1, 2.0), (2, 3.0), (2, 5.0), (2, 10.0)],
("id", "v"))
我的想法是做一些类似于Pandas的事情:
df.groupby("id").describe()
将得到以下结果:
v
count mean std min 25% 50% 75% max
id
1 2.0 1.5 0.707107 1.0 1.25 1.5 1.75 2.0
2 3.0 6.0 3.605551 3.0 4.00 5.0 7.50 10.0
谢谢。