获取具有匹配标题的所有列并在R中打印

获取具有匹配标题的所有列并在R中打印,r,R,我有3个文件,每个列都属于一个示例。我最终需要画x和y。但是,我的x值在一个文件中,相应的y值在另一个文件中。有200多个文件,所以我不想手动从所有文件中选择col1 我想抓取所有三个基于标题,并发送到一个新的文件。如果更简单,我也可以直接绘图,将文件1设置为x值,并将文件2中相应的匹配项设置为y值。不确定哪一个更容易,我已经尝试了循环和合并,但我无法让它正常工作。我正在使用R,但我愿意接受任何有帮助的东西 到目前为止,在R中尝试了此功能: for (i in 1:ncol(m)) { a

我有3个文件,每个列都属于一个示例。我最终需要画x和y。但是,我的x值在一个文件中,相应的y值在另一个文件中。有200多个文件,所以我不想手动从所有文件中选择col1

我想抓取所有三个基于标题,并发送到一个新的文件。如果更简单,我也可以直接绘图,将文件1设置为x值,并将文件2中相应的匹配项设置为y值。不确定哪一个更容易,我已经尝试了循环和合并,但我无法让它正常工作。我正在使用R,但我愿意接受任何有帮助的东西

到目前为止,在R中尝试了此功能:

for (i in 1:ncol(m)) {
  a <- data.frame(m[, i])
  myfile <- file.path(tempdir(), paste0(i, ".txt"))
  write.table(a, file = myfile, sep = "", row.names = FALSE, col.names = FALSE,
          quote = FALSE, append = FALSE)
}
文件2如下所示(y值):

文件3如下所示(颜色代码的系数):


提前感谢

我认为这应该有帮助

x <- read.table("x.txt", header=TRUE, quote="\"")
y <- read.table("y.txt", header=TRUE, quote="\"")
color <- read.table("color.txt", header=TRUE, quote="\"")

headername <- names(x)

for(i in 1:length(headername)) {

  combinedresult <- cbind(x[headername[i]],y[headername[i]],color[headername[i]])
  colnames(combinedresult) <- c("x","y","color")
  write.table(combinedresult,paste(headername[i],".txt",sep=""),quote=TRUE,row.names = FALSE)

}

嗨,阿法库,我刚试过你的建议。它工作得很好!!!!!!!非常感谢你!!!!!我让自己更难受了!嗨@Aafaque。我有个问题。有没有办法修改它以查找匹配的标题名称?到目前为止,它只根据其编号(即[1]或[2])为我提供匹配列,但返回了错误的值。如果选中“headername”,我已经提到了基于匹配头名称
ATP6V1H SLC24A1 STK17B
1.6378678   -0.07271993 1.09079677
-0.49133659 1.6378678   0.41088151
0.14582699  -0.10920048 0.80591848
-0.07271993 -1.02715427 -1.51238959
ATP6V1H SLC24A1 STK17B
4   4   4
4   4   4
4   4   4
0   0   0
x <- read.table("x.txt", header=TRUE, quote="\"")
y <- read.table("y.txt", header=TRUE, quote="\"")
color <- read.table("color.txt", header=TRUE, quote="\"")

headername <- names(x)

for(i in 1:length(headername)) {

  combinedresult <- cbind(x[headername[i]],y[headername[i]],color[headername[i]])
  colnames(combinedresult) <- c("x","y","color")
  write.table(combinedresult,paste(headername[i],".txt",sep=""),quote=TRUE,row.names = FALSE)

}
"x" "y" "color"
0.05934657 1.6378678 4
0.07479263 -0.49133659 4
0.09478673 0.14582699 4
0.1288194 -0.07271993 0