在R中格式化长格式调查数据

时间:2015-06-15 19:21:15

标签: r

我们问了3个人两三个是 - 没有问题。让我用“A”,“B”,“C”和0,1的答案来表示这3个人的101,102,103个问题。结果是

q<-data.frame(response=c(0,0,1,0,0,1,1),
                     qstn=c("A","B","A","B","A","B","C"),
                     person=c(101,101,102,102,103,103,103))

我们需要将此表格转换为以下格式

person|qustionA|questionB|questionC
101   |   0    |    0    |   NA
102   |   1    |    0    |   NA
103   |   0    |    1    |   1

1 个答案:

答案 0 :(得分:1)

您可以使用base-r中的reshape

reshape(q, v.names="response", idvar="person",
        timevar="qstn", direction="wide")

  person response.A response.B response.C
1    101          0          0         NA
3    102          1          0         NA
5    103          0          1          1