假设一个简单的数据集,如:
col data
0 A
0 B
0 C
1 D
1 E
1 F
2 G
2 H
2 I
Run Code Online (Sandbox Code Playgroud)
...目标是将其转换为由"col"中的不同值的数量给出的多个列,并且在每列中,由该列的关联"数据"指定的值...然后呈现所有内容作为一种笛卡尔积(其中列不应混合在一起):
0 1 2 (column names)
A D G
A D H
A D I
A E G
A E H
A E I
A F G
A F H
A F I
B D G
B D H
B D I
(etc...)
Run Code Online (Sandbox Code Playgroud)
我已经把它搞砸了一下,dcast(df, data ~ col)让我开始生成正确数量的列,但我仍然需要从那里到各种列的交叉积,每列中的值.最后要注意的是,这里的列数并不固有:任何解决方案必须适用于原始数据中指定的许多列.