Rによるデータフレームの読み込みとベクトルへの変換

外部ファイル(csvファイル)を統計ソフトRに読み込み、特定の列をベクトルに変換する方法。R mac版の場合。備忘録を兼ねて。

① 作業ディレクトリを設定する。

R→環境設定→起動と進むと、「ディレクトリ」を設定する場面が出てくるので、任意の場所に決める。指定したディレクトリの中にcsvファイルを保存する。ディレクトリを設定しないとファイルを読み込むことができない(と思われる)ので、注意。

② csvファイルを読み込む:

csvファイルの1行目が項目名の場合はheader=TRUEを記述する

x<-read.csv(“sample.csv”, header=TRUE)      # xという文字に、sample.csvを読み込む

csvファイルの1行目から数値が入力されている場合はheader=Falseを記述する

x<-read.csv(“sample.csv”, header=F)

例:sample.csv(以下参照)を読み込む場合

———sample.csv———————-

participants  pre-test  post-test

1                  20            40

1                  18             38

1                  16             55

1                  14             40

——————————————-

1列目が項目名になっているため、header=TRUEを記述する。

> x         # xを読み込む
participants pre.test post.test
1            1       20        40
2            2       18        38
3            3       16        55
4            4       14        40

と表示されます。

③ 特定の行の数値をベクトルに変換する

上記のデータフレームからpre.testの数値だけを表示させる時には

x$pre.test   # xの中のpre.testの行を表示させる

と入力。すると

> x$pre.test
[1] 20 18 16 14

と返してきます。このプログラムと、as.vector()関数(( )内のものをベクトルに変える関数)を用いて、以下のように記述

> pre<-x$pre.test     # preという文字の中にsample.csvファイルのpre.testの行の数値を格納
> pre            # preと入力すると、以下の[1]のように返してくる。
[1] 20 18 16 14
> as.vector(pre)      # preに格納されている数値をベクトルに変換
[1] 20 18 16 14
> is.vector(pre)      # preがベクトルであるかを調べる関数
[1] TRUE

以上で終了。

この方法を知っているだけで、エクセルファイルでまとめたデータをRで入力して分析するのにとても楽になるような気がします。まだ試していませんが、c( )の中に一つ一つデータを手打ちで入れていくよりはよほど簡単なのは明白です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です