【发布时间】:2013-03-22 00:39:50
【问题描述】:
给定这个data.frame:'sample',它代表物种之间的成对输赢:
sp1<-c(0,1,0)
sp3<-c(1,2,2)
sp5<-c(3,1,0)
sample<-as.data.frame(cbind(sp1,sp3,sp5))
rownames(sample)<-c("sp1","sp6","sp8")
应该是这样的:
sp1 sp3 sp5
sp1 0 1 3
sp6 1 2 1
sp8 0 2 0
如何修改“sample”,使其具有与行名相同的列名,反之亦然,并用零填充添加的列或行,以使数据框对称,如下所示? (我更喜欢数据框,因为我怕我不擅长矩阵):
sp1 sp3 sp5 sp6 sp8
sp1 0 1 3 0 0
sp3 0 0 0 0 0
sp5 0 0 0 0 0
sp6 1 2 1 0 0
sp8 0 1 0 0 0
真实数据大约有 150 行和列,所以我真的不想要 用excel手动完成。这种格式是应用与竞争物种相互作用结果有关的其他一些函数所必需的(列:获胜,行:损失)。
【问题讨论】: