2015-02-24 91 views
1

當按「名稱」排序時,有沒有辦法列出R中列出的文件?獲取list.files按照與Windows相同的順序讀取文件列表

例如,說我有一個目錄(以下簡稱 「TESTDIR」)具有下列文件:

Slide1_1.txt 
Slide1_2.txt 
Slide1_3.txt 
Slide1_11.txt 
Slide1_111.txt 
Slide2_1.txt 
Slide3_1.txt 

如果我的R中以下內容:

testFiles = list.files(path = testDir, full.names = F) 

testFiles將有下面的輸出:

> testFiles 
"Slide1_1.txt" "Slide1_11.txt" "Slide1_111.txt" "Slide1_2.txt" "Slide1_3.txt" "Slide2_1.txt" "Slide3_1.txt" 

然而,我想它是訂貨人這樣:

"Slide1_1.txt" "Slide1_2.txt" "Slide1_3.txt" "Slide1_11.txt" "Slide1_111.txt" "Slide2_1.txt" "Slide3_1.txt" 

在這些文件中是否有另一種閱讀方式?應該指出的是,這些文件的時間戳不是以任何特定的順序。

編輯:添加附加條件的文件名

+1

'testFiles [順序(NCHAR(testFiles))]' – Khashaa 2015-02-24 18:34:59

+0

或'庫(gtools); mixedsort(testFiles)' – akrun 2015-02-24 18:39:57

+0

我應該展開,我特別使用的文件名是這樣的:Slide1_1,Slide1_2,Slide1_3,Slide1_11,Slide1_111,Slide2_1,Slide3_1。我將編輯我的主帖以添加更多詳細信息。 – JCB 2015-02-24 18:40:27

回答

1

嘗試

library(gtools) 
mixedsort(testFiles) 
#[1] "Slide1_1.txt" "Slide1_2.txt" "Slide1_3.txt" "Slide1_11.txt" 
#[5] "Slide1_111.txt" "Slide2_1.txt" "Slide3_1.txt" 
+0

只是試過這個,它的作品非常漂亮!謝謝! – JCB 2015-02-24 18:50:27

+0

@JCB沒問題,萬一你需要訂單,就有'mixedorder' – akrun 2015-02-24 18:51:16

相關問題