`rbind`目录中按顺序的数据集

`rbind`目录中按顺序的数据集,r,path,merge,dataset,rbind,R,Path,Merge,Dataset,Rbind,我有一个行和行号相同的数据集。我想将这些数据按两个序列绑定 例如,对于数据5LSTT-test12_1.avgm和5LSTT-test12_1_sum.avgm 首先,我想使用rbind合并它们,并用新名称保存它们,比如test12.avgm。应该对同一目录中的每两个文件执行此过程 我已经通过网络进行了检查,但是大多数用于将数据合并到单个文件中的解决方案。我不知道如何合并两个数据并将它们保存为单个数据,然后处理路径中的所有文件 数据集是这样的 5LSTT-test12_1.avgm 5LS

我有一个行和行号相同的数据集。我想将这些数据按两个序列绑定

例如,对于数据
5LSTT-test12_1.avgm
5LSTT-test12_1_sum.avgm
首先,我想使用
rbind
合并它们,并用新名称保存它们,比如
test12.avgm
。应该对同一目录中的每两个文件执行此过程

我已经通过网络进行了检查,但是大多数用于将数据合并到单个文件中的解决方案。我不知道如何合并两个数据并将它们保存为单个数据,然后处理路径中的所有文件

数据集是这样的

5LSTT-test12_1.avgm   
5LSTT-test12_1_sum.avgm  
5LSTT-test13_1.avgm   
5LSTT-test13_1_sum.avgm  
.  
.   
.  
.  
5LSTT-test30_1.avgm   
5LSTT-test30_1_sum.avgm  

假设对象名的向量('v1')是有序的,我们可以使用
gl
将其拆分为2个元素,每个列表元素使用
gl
。我不确定这些对象是否已经在全局环境中。在这种情况下,我们可以使用
mget
并将
do.call(rbind,lappy(x,read.table)
替换为
do.call(rbind,mget(x))

lst <- lapply(split(v1,as.numeric(gl(length(v1), 2, length(v1)))), 
               function(x) do.call(rbind,lapply(x, read.table)))
数据
v1工作完美我得到了输出。非常感谢您的帮助。谢谢!亲爱的@akrun只有一件小事情程序在尝试打开文件“5LSTT-test10_1.-sum.avgm”时出错:没有这样的文件或目录。如何更改“sum.avgm”,因为它尝试读取.sum.avgm文件,但实际文件格式是“5LSTT-test13_1-sum.avgm”@Thabescity创建的
nm1
格式是
“test12.avgm”
。你是说文件的格式不是
“5LSTT-test12_1.avgm”
。我可能没有抓住要点。@Thabescity
sprintf('5LSTT-test%d_1-sum.avgm',12:30)
以您指定的格式提供文件名。我仍然不太理解这个问题。亲爱的@akrun抱歉延迟。是的,这部分还可以。但是当我们使用rep(c('avgm','sum.avgm')时,它读取.sum.avgm文件。我在目录中的文件的格式如下5LSTT-test12_1-sum.avgm
nm1 <- sprintf('test%d.avgm', 12:30)
names(lst) <- nm1
lapply(seq_along(lst), function(i) write.table(lst[[i]], 
                     paste0(nm1[i],'.txt'), quote=FALSE))
v1 <- sort(sprintf('5LSTT-test%d_1.%s', 12:30,
               rep(c('avgm', 'sum.avgm'),each=19)))