2013-05-29 138 views
0

我在一個文件夾中有多個文件,我希望每個文件都使用R執行相同的操作,而不必每次都更改腳本中的文件名。特別是,我有26個.csv文件,我需要單獨標識重複條目。任何意見,以最好的方式來做到這一點表示讚賞。在多個文件上執行相同的操作

回答

5

我一個lapply中使用list.files。 舉例來說,我覺得這樣的事情是一個良好的開端:

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')) 
+0

我相信你能避免說出在一個單獨的命令列表中,如果你使用'和'USE.NAMES = TRUE',而不是'lapply' sapply'。 –

+0

@MatthewPlourde是的,你可以在這裏使用'sapply',即使你沒有得到一個漂亮的名字(你會得到完整的路徑名)。就個人而言,我很少使用'sapply',我更喜歡使用'lapply'。 – agstudy

+1

太棒了,我迫不及待想嘗試一下。謝謝你們的協助。 – KES

相關問題