【发布时间】:2018-03-15 16:31:30
【问题描述】:
我无法从我的 data.frame 中制作方阵。 现在我的数据看起来像这样:
var1 var2 value
A B 4
C D 5
D A 2
B D 1
我正在尝试将 data.frame 转换为如下所示的矩阵:
A B C D
A 0 4 0 2
B 4 0 0 1
C 0 0 0 5
D 2 1 5 0
我尝试了 R 中可用的不同包中的许多功能,但仍然找不到解决方案。
【问题讨论】:
-
请贴出您尝试过的许多功能以及为什么不起作用
-
xtabs(value~var1+var2, df)? -
@Sotos 这将错过列
C -
感谢您帮助我。 @PoGibas 我试过这个:
comatrix <- data.frame(var1 = data3$u1.var1, scores = data3$value, var2= factor(data3$var2,levels=unique(data3$var2))) acast(comatrix, formula = var1 ~ var2, fill = 0, value.var ="scores", fun.aggregate =sum, drop = FALSE)通过这段代码,我得到了一个矩阵,但不是正方形