2016-03-26 64 views
-1

CSV文件號碼我有200個CSV文件,我想加載只有50個文件出來。 我已經選中該功能:加載指定的R中

fl <- list.files(directory, pattern = "*.csv", full.names = TRUE) 

在提供的路徑目錄,上面的函數加載目錄中的所有文件。
是他們的替代方案,它可以幫助我加載指定數量的文件,從而可以最大限度地減少程序的執行時間。

回答

1

如果我們只需要讀取第一個50個文件,子集「FL」 vector使用head,然後用lapply

fl1 <- head(fl,50) 
lst <- lapply(fl1, read.csv, header=TRUE) 
+0

我誤解了我自己的問題閱讀在list的文件時,實際的問題是裝載將指定數量的文件存入內存。 –

+0

@ViralParmar通過使用'list.files',你只能以字符串的形式獲取文件的名字。我不知道在目錄中是否有1e7文件來創建你提到的那種問題。讀取指定數量的文件只發生在「lapply」步驟中。如果'read.csv'有點太多了,'lapply(fl1,fread)'可以在加載'library(data.table)後更高效' – akrun

+0

謝謝!和代碼現在正常工作! –