我有一个Spark数据框df,如下所示:
key| date | val | col3
1 1 10 1
1 2 12 1
2 1 5 1
2 2 7 1
3 1 30 2
3 2 20 2
4 1 12 2
4 2 8 2
5 1 0 2
5 2 12 2
我要:
1) df_pivot = df.groupBy(['date', 'col3']).pivot('key').sum('val')
2) df_pivot.write.parquet('location')
但是,通过数百万个唯一键和唯一col3,我的数据可以变得非常庞大。 有没有办法对col3的每个分区执行上述操作? 例如:对于col3 == 1的分区,请进行数据透视并编写实木复合地板
注意:我不想使用for循环!