特定の順序で処理する必要があるいくつかのデータファイルがあります。ファイル名のパターンは、例えば"Ad_10170_75_79.txt"
.
現在、それらは最初の数字 (長さが異なります) に従ってソートされています。以下を参照してください。
f <- as.matrix (list.files())
f
[1] "Ad_10170_75_79.txt" "Ad_10345_76_79.txt" "Ad_1049_25_79.txt" "Ad_10531_77_79.txt"
しかし、次のように、それらを中央の数字でソートする必要があります。
> f
[1] "Ad_1049_25_79.txt" "Ad_10170_75_79.txt" "Ad_10345_76_79.txt" "Ad_10531_77_79.txt"
ファイル名の真ん中の番号が必要なだけなので、残りの名前を削除してすべてのファイルの名前を変更するのが最も簡単な方法だと思いました。このために、strsplit
(plyr
)を使用してみました。
f2 <- strsplit (f,"_79.txt")
しかし、すべてのファイルの名前を変更せずに、ファイルを直接並べ替える方法があると確信しています。sort
and を使用して名前を説明しようとしましregex
たが、成功しませんでした。これは何日もの間問題でした。私はこのおそらく簡単な作業を解決するために数時間をかけて検索し、試行しました。どんな助けでも大歓迎です。
古いサンプル データセット:
f <- c("Ad_10170_75_79.txt", "Ad_10345_76_79.txt",
"Ad_1049_25_79.txt", "Ad_10531_77_79.txt")
ご回答ありがとうございます。数字に関係なく、考えられるすべての中間数に対して解決策が機能するはずなので、例を変更する必要があると思います。
新しいサンプル データセット:
f <- c("Ad_10170_75_79.txt", "Ad_10345_76_79.txt",
"Ad_1049_9_79.txt", "Ad_10531_77_79.txt")