我正在尝试根据另一个数据行的值建立现有数据行的新版本。例如,在输入中,我为'var 1'、'var 2'、'var 3'建立新数据行,以取得'var'分割可以取得的每个值。
输入:
| 计时器|学生|劈裂|变量1|变量2|变量3|
| - -|- -|- -|- -|- -|- -|
| t1通道|学生1| A级|一个|三个|七个|
| t1通道|学生1| B| 2个|五个|六个|
| t1通道|学生1| C类|三个|一个|九个|
| 第二次|学生1| A级|五个|三个|七个|
| 第二次|学生1| B|九个|六个|三个|
| 第二次|学生1| C类|三个|五个|三个|
| t1通道|学生2| A级|一个|2个|八个|
| t1通道|学生2| C类|七个|四个|第0页|
输出:
| 计时器|学生|拆分变量1|拆分变量2|拆分变量1|拆分B_var1|拆分B_var2|拆分B_var3|拆分C_var1|拆分C_var2|拆分C_var3|
| - -|- -|- -|- -|- -|- -|- -|- -|- -|- -|- -|
| t1通道|学生1|一个|三个|七个|2个|五个|六个|三个|一个|九个|
| 第二次|学生1|五个|三个|七个|九个|六个|三个|三个|五个|三个|
| t1通道|学生2|一个|2个|八个||||七个|四个|第0页|
Image of output here if table not formatted
1条答案
按热度按时间6jygbczu1#
这是一个简单的具有多个聚合的
pivot
(在agg()
内)。参见下面示例
spark将使用以下命名法创建新列- 〈数据透视列值〉_〈聚合别名〉