我有一个类似于下面的数据框:
trial Card1_colour Card1_number Card1_shape Card2_colour Card2_number Card2_shape ......
1 1 1 0 0 1 1
2 0 0 0 1 1 1
3 1 0 0 0 0 0
4 0 0 1 0 0 1
5 1 1 1 1 0 1
.
.
.
.
除了我的实际数据框有 12 个“卡片”变量之外,Card1_colour : Card4_shape。
#Code for generating example data
data<-matrix(rbinom(20*12, 1, .5), ncol=12)
trial<-seq(from = 1, to = 20)
data<-cbind(trial,data)
data<-as.data.frame(data)
colnames(data)[2] <- "Card1_colour"
colnames(data)[3] <- "Card1_number"
colnames(data)[4] <- "Card1_shape"
colnames(data)[5] <- "Card2_colour"
colnames(data)[6] <- "Card2_number"
colnames(data)[7] <- "Card2_shape"
colnames(data)[8] <- "Card3_colour"
colnames(data)[9] <- "Card3_number"
colnames(data)[10] <- "Card3_shape"
colnames(data)[11] <- "Card4_colour"
colnames(data)[12] <- "Card4_number"
colnames(data)[13] <- "Card4_shape"
我想将我的数据重塑成一个 n(trial) x 4 x 3 矩阵,看起来像这样:
trial Card Colour Number Shape
1 1 1 1 0
1 2 0 1 1
1 3 0 1 0
1 4 1 1 1
2 1 1 0 0
2 2 1 1 0
2 3 0 1 1
2 4 1 1 0
换句话说,每次试验的卡片 1 - 卡片 4 将成为行变量,而颜色、形状和数字仍然是列变量。
任何帮助表示赞赏!谢谢。