完全なファイル名がわからないファイルを R に読み込む方法はありますか。何かのようなもの。
read.csv("abc_*")
この場合、後の完全なファイル名はわかりませんabc_
条件に一致するファイルが 1 つだけある場合は、次のように実行できます。
read.csv(dir(pattern='^abc_')[1])
複数のファイルがある場合、このアプローチでは最初のヒットのみが使用されます。より精巧なバージョンでは、すべての一致をループして、それらを 1 つのデータフレームなどに追加できます。
このパターンは正規表現を使用しているため、予想していたものとは少し異なることに注意してください (そして、質問に答えるために最初のショットで誤って想定したもの)。詳細は次を使用して見つけることができます?regex
サブミットしたいディレクトリがある場合は、dir
それに応じてコマンドを変更する必要があります。
read.csv(dir('path/to/your/file', full.names=T, pattern="^abc"))
c:\\users\\user\\desktop
あなたのケースで提出されたパスは、上記のパターンの場合があります。ファイル名だけでなく、パス全体をfull.names=T
強制的に出力します。そこで何が起こっているのかを理解するために、 なしでdir()
実行してみてください。dir(...)
read.csv
パスを完全な文字列として指定したい場合は、もう少し複雑になります。
filepath <- 'path/to/your/file/abc_'
read.csv(dir(dirname(filepath), full.names=T, pattern=paste("^", basename(filepath), sep='')))
ファイル名に正規表現キーワードが含まれている場合、そのプロセスは失敗します。その場合、対応するエスケープシーケンスを前もって置き換える必要があります。しかし、それはまた別のトピックです。