我已經看到了其他一些帖子,他們建議將數據框加載到列表中,但是他們從未解釋過什麼是可接受的方式來命名動態生成的數據框。動態生成並命名數據框
我已經拿出了下面的代碼,我想知道這是否是一個很好的方法,或者如果我將來遇到問題?
感謝,
#create the data frames from all csv files into a list
dfs <- lapply(list.files(pattern="*.csv"),read.csv)
#Give them the correct names
names(dfs) <- regmatches(list.files(pattern="*.csv"),regexpr("^[[:alpha:]]+", list.files(pattern="*.csv")))
另外,我可以爲它們命名,並在同一時間創造呢?我不想冒着在第二次調用時list.files以不同順序返回的風險,並且我在數據框上輸入了錯誤的名稱。
我想這和它的工作很好,除了以數字開始任何的.csv名。 – Stu 2014-10-09 17:40:39
你是對的,我應該使用一個更強大的正則表達式來查找文件名末尾的.csv。除此之外,它是否強健?這是對的嗎?它是優雅的嗎?是否會導致問題的道路? – variable 2014-10-09 17:42:52
只有在文件被添加,刪除或修改時纔會發生不同的順序。您可以簡單地將'list.files'的返回值存儲在(臨時)變量中。 – Roland 2014-10-09 17:43:22