对多个文件执行相同的操作

时间:2013-05-29 13:24:38

标签: r

我在一个文件夹中有多个文件,我想使用R对每个文件执行相同的操作,而不是每次只更改脚本中的文件名。特别是,我有26个.csv文件,我需要单独识别重复的条目。任何有关最佳方法的建议都表示赞赏。

2 个答案:

答案 0 :(得分:5)

我会在list.files中使用lapply。 例如,我认为这样的事情是一个好的开始:

 res <- lapply(list.files(path=FILES_DIRECTORY,
                              pattern='*.csv',  ## I look for csv files, 
                              full.names=T),    ## to get full names path+filename
                   function(file){ ff <- read.csv(file)
                                   ff[duplicated(ff),]
                   })

您还可以使用文件名命名结果列表。

  names(res) <- gsub('[.]csv','',
                      list.files(path=FILES_DIRECTORY,pattern='*.csv'))

答案 1 :(得分:0)

也许你应该通过呼叫终端完成这种治疗:

R --save --args *.csv < myScript.R

请参阅How can I read command line parameters from an R script?