Rでコマンド:ファイルやフォルダを操作するコマンド例

Rの解析に役に立つ記事

基本コマンドでフォルダの新規作成、ファイルのコピーを実行する例です。

指定した「XXX」フォルダ内のファイルを、新規にデスクトップに作成した「NEW_XXX」フォルダにコピー。そして、ファイル名を「指定したファイル名_No.元の拡張子」に変更するコマンドです。なお、元フォルダの内容は変更されません。

コマンドを上から順に実行すると下記画像の左から右の写真のようになります。

filecomand

実行コマンドはwindows 7およびOS X 10.11.2のR version 4.1.2で確認しています。


スポンサーリンク
スポンサーリンク

実行コマンド

詳細はコメント、コマンドのヘルプを確認してください。

#パッケージの読み込み
library("tcltk")

#対象ファイルが保存されている「XXX」フォルダを選択
TargetDir <- paste(as.character(tkchooseDirectory(title = "フォルダを選択"),
           sep = "", collapse =""))

#フォルダ名を取得
DirName <- tail(unlist(strsplit(TargetDir, "\\/")), n = 1)

#フォルダ内のファイルを取得
ItemList <- list.files(path = TargetDir)

#拡張子を取得
ExtenList <- t(as.data.frame(strsplit(ItemList, "\\.")))[, 2]

#デスクトップにフォルダを作成
#作成場所を指定
if(.Platform$OS.type == "windows"){
  #windows
  NewDir <- paste0(file.path(Sys.getenv("USERPROFILE"), "Desktop", fsep="\\"), "/NEW_", DirName)
  
  } else {
    #Mac
    NewDir <- paste0(file.path(path.expand("~"), "Desktop"), "/NEW_", DirName) }

#フォルダを作成
dir.create(NewDir)

#作成したフォルダにファイルをコピー
file.copy(paste0(TargetDir, "/", ItemList), paste0(NewDir, "/", ItemList))

#ファイル名の変更
file.rename(paste0(NewDir, "/", ItemList),
            paste0(NewDir, "/", ChangeName, "_", seq(ItemList), ".", ExtenList))

少しでも、あなたのウェブや実験の解析が楽になりますように!!

タイトルとURLをコピーしました