informatics>データ分析

R 入門

データの入力

事前に用意した次のようなテキストファイルがあったとする。

     150 30
     154 35
     165 38
     144 28
     186 35

データをファイル( test.dat )から入力するには scan()関数 を利用する。 scan()関数 の引数には

  • file="ファイル名"
  • sep="区切り文字"
    • 空白により固定長に整形してあるデータの場合sep引数は必要ない などがある。

なお、scan関数は、改行を区切り記号としてしか扱わない。

このため、

     >input_1 <- scan("test.dat")

として読み込むと、

     >input_1
     [1]150 30 154 35 165 38 144 28 186 35

という具合に、1つのリストとして読み込まれることになる。 ちなみに、「 <- 」というのは「付値」といって、これによって、変数 input_1 に test.dat のデータを割り当てている。

そこで、次に、指定されたデータの型のリストとして読み込むようにする。 そのためには、scan()関数の引数として list を用いる。list の型は数値の場合は0、ラベルの場合""を指定する。

     >input_1 <- scan("test.dat", list(0,0))
     >input_1
      [[1]]
     [1]150 154 165 144 186
     [[2]]
     [1]30 35 38 28 35

また、matrix()関数 を用いてデータを行列として読み込むという方法もある。

     >input_2 <- matrix(scan("test.dat"),ncol=2, byrow=T)
     >input_2
       [,1] [,2]
     [1,]  150 30
     [2,]  154 35
     [3,]  165 38
     [4,]  144 28
     [5,]  186 35

matrix() 関数の引数である ncol は列の数を意味し、byrow = T というのは行方向優先で定義するということを意味する。



トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-03-15 (月) 12:46:57 (5149d)