0
我有一个像下面这样的数据,我想将这个变量转换成列,它应该等于变量中的no.of类。如何将多类变量转换为R中的多列?
数据:
variable
1 red
2 red
3 black
4 red
5 black
6 green
7 black
8 red
9 green
预期输出:
variable red black green
1 red 1 0 0
2 red 1 0 0
3 black 0 1 0
4 red 1 0 0
5 black 0 1 0
6 green 0 0 1
7 black 0 1 0
8 red 1 0 0
9 green 0 0 1
尝试:
data$red = ifelse(data$variable == "red",1,0)
data$black = ifelse(data$variable == "black",1,0)
data$green = ifelse(data$variable == "green",1,0)
通过使用上面的代码中,我取得了我想要的东西。但是如果我在一个变量中有超过10个类,我不想编写10次代码。那么,有没有什么最好的办法可以一气呵成呢。
请问您可以使用'dput'来分享示例向量吗? –
[将N个分类的分类因子重新编码为N个二进制列]可能有重复(http://stackoverflow.com/questions/16200241/recode-categorical-factor-with-n-categories-into-n-binary-columns) –