R 从数据帧中的文件名列表加载文件

R 从数据帧中的文件名列表加载文件,r,excel,dataframe,R,Excel,Dataframe,我创建了一个程序,可以从Excel工作表中进行计算。此工作表的数据来自机器。我已将机器设置为导出到给定文件夹。我希望R程序从这个文件夹输入数据(数据)并运行代码,然后导出到另一个文件夹(结果)。我不希望代码在以前完成的数据上运行。我目前已完成以下工作: library(gdata) library (XLConnect) #################### data in ######################## setwd("c:/r/data/") datain <

我创建了一个程序,可以从Excel工作表中进行计算。此工作表的数据来自机器。我已将机器设置为导出到给定文件夹。我希望R程序从这个文件夹输入数据(数据)并运行代码,然后导出到另一个文件夹(结果)。我不希望代码在以前完成的数据上运行。我目前已完成以下工作:

library(gdata) 
library (XLConnect)

#################### data in ########################
setwd("c:/r/data/")

datain <- list.files(pattern="*.xlsx", full.names=T, recursive=FALSE)

##################### results in ###################

setwd("c:/r/result/")

results <- list.files(pattern="*.xlsx", full.names=T, recursive=FALSE)

################## set wd back to data #################################

setwd("c:/r/c/")

torun <- datain[!(datain %in% results)]

############################################################################

dataframtorun <- data.frame(torun)

dataframtorun 
           torun
1 ./343sdasd.xlsx
2    ./4ewwq.xlsx
3  ./TRICARB.xlsx
库(gdata)
库(XLConnect)
####################数据输入########################
setwd(“c:/r/data/”)

数据在中,您需要阅读
XLConnect
的文档,以确定要对每个文件执行的操作。还有一个你可以考虑的<代码> XLSX < /代码>包。因此,R中的循环语法是相当标准的,但是您也可以在
lappy
函数中使用循环的替代方法(为其文档键入
?lappy
),例如
list\u o\u dfs是的,但是使用xlconnect可以从data.frame调用名称吗?像data.frame[i,1],然后循环i,这样所有没有结果的文件都将通过函数传递?对不起,我目前正在使用我的手机,没有代码(对不起,我不熟悉XLConnect的功能细节)。我假设XLConnect可以使用字符串文件名,是的,在这种情况下,在它们上面循环应该可以。您需要将结果分配到一个列表中,就像这个问题的内部循环中的
res
:顺便说一句,您可以只使用
torun[i]
,而无需进行
dataframtorun
和访问
dataframtorun[i,1]