簡體   English   中英

對於許多文件,如何在 R 中將列從一個文件合並到另一個文件?

[英]How to merge columns from one file to another in R for many files?

我有超過 100 個文件,例如 File_1,,,,,,File_100,如下所示:

Position    Likelihood  Alpha
11885.0000  8.457955e-02    2.089548e+02
21877.3906  2.160398e+01    1.509296e-05
31869.7812  1.268591e+01    2.130559e-05

還有更多 100 個文件,例如 File_1,,,,,File_100,如下所示:

Position    Likelihood  Alpha   StartPos    EndPos
11885.0000  0.000000e+00    1.200000e+03    11885.0000  32345.0000
21877.3906  0.000000e+00    1.200961e-03    11885.0000  32345.0000
31869.7812  1.083378e-01    6.004804e-04    11885.0000  32345.0000

我正在嘗試將其他文件中的 StartPos 和 EndPos 組合到上述文件中,最終我將有五列。 所以,我做了這樣的事情:

a<-read.table("File_1", header = T)
b<-read.table("File_1", header = T)
c<-cbind(a,b[4:5])
write.table(c, file="File_1.txt")

我的問題是,我怎樣才能把這個命令放在一個循環中,它遍歷目錄 A 中的所有 100 個文件和目錄 B 中的 100 個文件並生成一個新文件? 這兩組 100 個文件位於不同的目錄中。 謝謝您的幫助。

試試這個,但您必須指定系統中的文件夾,例如"/Users/mohamed/File_"

for(i in 1:100){
    a<-read.table(paste0("/Users/Documents/First_results/new_file/V-3/Report_Chr_" , i), header = T)
    b<-read.table(paste0("/Users/Documents/First_results/new_file/V-4/Report_Chr_" , i), header = T)
    c<-cbind(a,b[4:5])
    write.table(c, file=paste0("Report_Chr_" , i , ".txt"))
    
}

這必須將新文件保存在您的工作目錄中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM