R 将指标列转换为计数表?

R 将指标列转换为计数表?,r,contingency,R,Contingency,在R中,我试图将指标变量的数据帧转换为计数表 我的数据如下所示,其中A、B、C和D是不同条件的指标变量,ID1、ID2、ID3和ID4是患者ID test <- data.frame(rbind(c(0,0,0,1),c(1,0,0,1),c(1,0,0,0),c(1,1,0,0))) colnames(test) <- c("A","B","C","D") rownames(test) <- c("ID1","ID2","ID3","ID4"); test A B

在R中,我试图将指标变量的数据帧转换为计数表

我的数据如下所示,其中A、B、C和D是不同条件的指标变量,ID1、ID2、ID3和ID4是患者ID

test <- data.frame(rbind(c(0,0,0,1),c(1,0,0,1),c(1,0,0,0),c(1,1,0,0)))
colnames(test) <- c("A","B","C","D")
rownames(test) <- c("ID1","ID2","ID3","ID4"); test

    A B C D
ID1 0 0 0 1
ID2 1 0 0 1
ID3 1 0 0 0
ID4 1 1 0 0

由于A、B、C和D是不同的变量,并且给定的ID可以有多个条目,所以我不确定如何实现这一点。谢谢你的帮助

矩阵乘法能解决你的问题吗

test <- data.frame(rbind(c(0,0,0,1),c(1,0,0,1),c(1,0,0,0),c(1,1,0,0)))
colnames(test) <- c("A","B","C","D")
rownames(test) <- c("ID1","ID2","ID3","ID4"); test

test1 <- as.matrix(test)
t(test1) %*% test1

test矩阵乘法能解决你的问题吗

test <- data.frame(rbind(c(0,0,0,1),c(1,0,0,1),c(1,0,0,0),c(1,1,0,0)))
colnames(test) <- c("A","B","C","D")
rownames(test) <- c("ID1","ID2","ID3","ID4"); test

test1 <- as.matrix(test)
t(test1) %*% test1

测试哦,天哪,太完美了!非常感谢你-我永远不会想到这个!哦,天哪,太完美了!非常感谢你-我永远不会想到这个!