我有这两个表:
1003 1 0 0 2 0 0 0 0 0 0 0 0 0
1003 2 0 0 1 0 0 0 0 0 0 0 0 0
1003 3 2 1 2 2 1 2 1 2 0 0 0 0
1003 4 2 1 1 2 1 1 1 1 0 0 1 1
和
snp1 1
snp2 2
snp3 3
snp4 4
我希望使用R将第二个表的第一列添加为第一个表格顶部的行:
snp1 snp2 snp3 snp4
1003 1 0 0 2 0 0 0 0 0 0 0 0 0
1003 2 0 0 1 0 0 0 0 0 0 0 0 0
1003 3 2 1 2 2 1 2 1 2 0 0 0 0
1003 4 2 1 1 2 1 1 1 1 0 0 1 1
请帮忙,非常感谢你。
答案 0 :(得分:2)
你的问题有点模糊。 snp1...snp4
应该是某种列标题吗?第一张表中的其他列怎么样?什么应该填补在那里?我怀疑这是你想要做的,但实际上这确实回答了你的问题:
#table 1
x1 <- read.table(text = "1003 1 0 0 2 0 0 0 0 0 0 0 0 0
1003 2 0 0 1 0 0 0 0 0 0 0 0 0
1003 3 2 1 2 2 1 2 1 2 0 0 0 0
1003 4 2 1 1 2 1 1 1 1 0 0 1 1", header = FALSE)
#table 2
x2 <- read.table(text = "snp1 1
snp2 2
snp3 3
snp4 4", header = FALSE)
#insert the first column of table 2 into the first row of table 1
x3 <- rbind(c(as.character(x2[,1]), rep(NA, ncol(x1) - nrow(x2))), x1)
导致:
V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14
1 snp1 snp2 snp3 snp4 <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA>
2 1003 1 0 0 2 0 0 0 0 0 0 0 0 0
3 1003 2 0 0 1 0 0 0 0 0 0 0 0 0
4 1003 3 2 1 2 2 1 2 1 2 0 0 0 0
5 1003 4 2 1 1 2 1 1 1 1 0 0 1 1