【发布时间】:2016-01-15 04:12:21
【问题描述】:
我有一个如下所示的数据集:
data_original <- matrix(c("class1","class2","class3","class1","class2","class3","class1","class2","class3"),ncol=1,byrow=TRUE)
colnames(data_original) <- c("class")
rownames(data_original) <- c("student1","student2","student3","student1","student2","student3","student1","student2","student3")
data_original <- as.table(data_original)
data_original
class
student1 class1
student2 class2
student3 class3
student1 class1
student2 class2
student3 class3
student1 class1
student2 class2
student3 class3
我希望它看起来像这样:
data_req <- matrix(c(1,1,0,1,0,0,1,1,0),ncol=3,byrow=TRUE)
colnames(data_req) <- c("class1","class2","class3")
rownames(data_req) <- c("student1","student2","student3")
data_req <- as.table(data_req)
data_req
class1 class2 class3
student1 1 1 0
student2 1 0 0
student3 1 1 0
基本上,我想将指示学生正在学习的班级的班级列中的值转换为自己的列。 有没有可以做到这一点的 R 包?
【问题讨论】:
-
您的输出与您的输入不匹配。
-
您的输入实际上是
table,还是data.frame? -
看来要转换的原始数据不正确。似乎学生和班级应该按“1,2,3”和“1,1,1”的顺序排列,其中上面的数据是“1,2,3”和“1,2,3”
-
对不起,是的,输出不匹配,我想提供一个我想要的输出类型的例子。我想不出桌子的名字。 @thelatemail - 是的,我的看起来像重复的。我想不出要搜索的名称,我猜二进制表是个好名字。
标签: r