我有以下示例数据框:
data.frame(ID=c(1:9),COLOR=c('red','green','blue','white','black','yellow','red','blue','red'),
SHAPE=c('square','circle','triangle','square','triangle','circle','circle','circle','square'),
VAR_X=c(5,8,3,9,7,4,2,9,12))
ID COLOR SHAPE VAR_X
1 1 red square 5
2 2 green circle 8
3 3 blue triangle 3
4 4 white square 9
5 5 black triangle 7
6 6 yellow circle 4
7 7 red circle 2
8 8 blue circle 9
9 9 red square 12
使用此数据框,我想为COLOR和SHAPE的组合为每个唯一值创建一个新列 . 因此,在我的例子中,我想要新的列:'红色方块','绿色圆圈','蓝色三角形','白色方块','黑色三角形','黄色圆圈','红色圆圈','蓝色圆圈” . 新列中每个观察值应与COLOR和SHAPE组合相对应 . 对于'红色方块',这看起来像:
ID COLOR SHAPE VAR_X red_square
1 1 red square 5 true
2 2 green circle 8 false
3 3 blue triangle 3 false
4 4 white square 9 false
5 5 black triangle 7 false
6 6 yellow circle 4 false
7 7 red circle 2 false
8 8 blue circle 9 false
9 9 red square 12 true
由于我只想要独特的组合,因此只能创建一个“红色方块”的新列 . 对于数据框中不存在的所有可能组合(例如,白色圆圈),不应创建列名 .
有人得到了我正在寻找的解决方案吗?
1 回答
我们可以用
table