我的配置单元表有两列(string,array<struct<type=string,cnt=int>>),如下所示:
||id | |参数||
||id1 | |[{type=a,cnt=4},{type=b,cnt=2}]
||id2 | |[{type=a,cnt=3},{type=c,cnt=1},{type=d,cnt=0}]
||id3 | |[{type=e,cnt=1}]
我需要将其转换为具有分隔int列的表,其中列名称为“types”,值等于cnt:
||id | | a | | b | | c | | d | e||
||id1 | | 4 | | 2 | |空| | |空||
||id2 | | 3 | |空| | 1 | | 0 | |空||
||id3 | |空| |空| |空| | 1||
转换表的最佳有效方法是什么?sparksql和pyspark风格。谢谢您。
1条答案
按热度按时间af7jpaap1#
试试这个-不确定是否需要sum,但似乎可以安全地假设:
退货: