informatics>データ分析
事前に用意した次のようなテキストファイルがあったとする。
150 30 154 35 165 38 144 28 186 35
データをファイル( test.dat )から入力するには scan()関数 を利用する。 scan()関数 の引数には
なお、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 というのは行方向優先で定義するということを意味する。