このコマンドは、データ "filelist
"をサブセット化してすべての "jpg"ファイルを削除します。grepl()を使用してデータの複数のパターンに一致させるR
filetype.isnotjpg <- setdiff(filelist, subset(filelist, grepl("\\.jpg$", filelist)))
これは、ディレクトリのファイル名を含む文字列 "filelist"を取ります。 "jpg"、 "doc"、 "pdf"、 "xls"などのタイプでないファイルをすべて返したいと思います。リストをフィルタリングするのと同じ数の型を指定できるようにしたいと思います。理想的には
この再帰的なアルゴリズムは私がやりたいことに努めています
target.files <- setdiff(filelist, subset(filelist, grepl(
c("\\.jpg$", "\\.doc$", "\\.pdf$", "\\xls$"), filelist)
のようなもの:
a <- setdiff(files.list, subset(files.list, grepl("\\.tmp", files.list, ignore.case = TRUE)))
a <- setdiff(a, subset(a, grepl("\\.jpg", a, ignore.case = TRUE)))
a <- setdiff(a, subset(a, grepl("\\.pdf", a, ignore.case = TRUE)))
a <- setdiff(a, subset(a, grepl("\\.tif", a, ignore.case = TRUE)))
など(適用のようなもの)が動作するのでしょうか?私は残念ながらRに新しいです。
42点の作品のソリューション:
target.files <- setdiff(
files.list,
subset(files.list,
grepl(
paste(
c("\\.jpg", "\\.doc", "\\.pdf",
"\\.xls", "\\.tif", "\\.docx", "\\.xlsx", "\\.jpeg"),
collapse="|") ,
files.list,
ignore.case = TRUE)))
再現可能な例はどうですか? –
私が修正した 'grepl'のスペルミスがありました。 –