2016-10-06 7 views
1

私は日付が含まれるいくつかのファイル名を持っていると私は例えば、数値順にソートする必要があります。文字列内の日付をソートする方法は?

dates=c("8_18_2016.xlsx","8_25_2016.xlsx","8_4_2016.xlsx") 

と私はそれを整理したい:

> dates 
"8_4_2016.xlsx" "8_18_2016.xlsx" "8_25_2016.xlsx" 

おかげ

+1

混在ソートを[少し異論]のものです: 'gtools :: mixedsort(C( "8_18_2016.xlsx"、 "8_25_2016.xlsx"、「8_4_2016 .xlsx "))' – alistaire

+0

@alistaireこれはすばらしいおいしいです!ありがとう – Mohammad

+1

@alistaireこれは1年以上が表現されている場合には問題になるかもしれません。 'gtools :: mixedsort(c(" 8_18_2016.xlsx "、" 8_25_2015.xlsx "、" 8_4_2016.xlsx "))'を試して、私の言いたいことを見てください。 – rosscova

答えて

6

別のベクトルを作成して値を日付形式に変換すると、順序がわかります。

dates.order <- order(as.Date(dates, format = "%m_%d_%Y.xlsx")) 

その後、あなたの元のベクトルをソートするためにそれを使用:

sorted <- dates[ dates.order ] 
sorted 
[1] "8_4_2016.xlsx" "8_18_2016.xlsx" "8_25_2016.xlsx" 
関連する問題