[[Rの備忘録]] ソースファイルにc()関数で記述されたデータ data.txt がある場合 source("data.txt") とすると,ファイル内のコードが実行されるのだが,仮にdata.txt に代入式がなければ,オブジェクトは作成されない. 仮に data.txt の中身が list( x11 = c(0,0,0,0,0,0,0,1,1,1,1,1,1,1), x12 = c(1,0,0,0,0,0,0,1,0,0,0,0,0,0), x13 = c(0,1,0,0,0,0,0,0,1,0,0,0,0,0) ) x13 = c(0,1,0,0,0,0,0,0,1,0,0,0,0,0) ) とする.とりあえず次のように実行したのだが,絶対もっと簡単な方法あるはずだな. data.txt <- readLines("data.txt" ) # ここまでファイルの各行が要素となったベクトルが生成 data.txt <- paste(data.txt, collapse = " ") # ベクトルを一つの文字列にまとめてしまい d <- eval( parse(text = data.txt) ) # parse() 関数を使って文字列をRの式に変換して実行