「R」では、CSVファイルを読み込み解析を行うことができます。本講座では、下記リンク先の男性の年齢別(10代)運動能力のcsvファイルデータを読み込み解説を行います。
「男性_年齢別運動能力.csv」のデータ内容は以下の通りです。
年代 | 握力 | 上体起こし | 反復横とび | 50m走 |
10歳 | 17.36 | 20.09 | 42.97 | 9.26 |
11歳 | 20.04 | 21.69 | 45.79 | 8.9 |
12歳 | 24.64 | 25.11 | 49.58 | 8.4 |
13歳 | 29.93 | 28.67 | 53.33 | 7.85 |
14歳 | 35.7 | 30.78 | 55.64 | 7.44 |
15歳 | 38.68 | 29.54 | 54.94 | 7.47 |
16歳 | 41.31 | 31.43 | 58.64 | 7.28 |
17歳 | 43.18 | 32.27 | 57.55 | 7.19 |
18歳 | 41.93 | 30.62 | 57.64 | 7.36 |
19歳 | 42.57 | 30.11 | 57.17 | 7.38 |
「男性_年齢別運動能力.csv」のデータをRに読み込みます。データの読み込みコマンドは以下の通りです。
なお、「男性_年齢別運動能力.csv」は、作業ディレクトリ上に、ファイルを格納しておく必要があります。作業ディレクトリの指定方法は、下記リンク先の「プログラムの実行方法」を参照下さい。
Rでは、csv形式のファイルをデータフレーム型で読み込む時に使う関数として「read.csv()」関数が用意されています。
コマンド | 用法 |
read.csv | csv形式のファイル読み込みを行う関数です。”ファイル名.csv”の形式ファイルを読み込みます。 |
header | 1行目を列名として読み込むか否か判定する。header=T(True)で1行目は列名扱います。 |
row.names | データ読み込み時に行名を設定します。row.names = a でa列名を行明として扱います。空白で行明無しとして扱います。 |
fileEncoding | macの場合、「fileEncoding=“CP932″」を入力しないと読み込みエラーになる場合があります。(windowsは基本入力不要です。) |
df <- read.csv(“男性_年齢別運動能力.csv”, header=T, row.names=1, fileEncoding=”CP932″)
df
データフレームの特徴は、指定することで任意の要素へ参照(アクセス)できることです。(例:データの1行目のみを参照、1列目のみを参照、列名が「反復横とび」の列だけ参照…)
df[,1]
df[1,]
df$上体起こし
df[,c(2,3)]
コマンド | 用法 |
df$列名 | 「列名」という名の列データを参照します。 |
df[ ,a] | a列目のデータを参照します。 |
df[b, ] | b行目のデータを参照します。 |
df[, c(a, b)] | a列目とb列目のデータを参照します。 |
Rでは、データの任意の部分を参照するだけでなく、他の変数に代入することによって保存することが出来ます。大きなデータから必要なデータだけを取り出し保存したい時に利用出来ます。
コマンド | 用法 |
subset(変数,条件) | 変数の条件に合うものを取り出します。subset(df,df$X50m走 <8 )では、dfという変数のX50m走列が8より小さいものを取り出します。 |
変数[行の条件,列の条件] | 変数内の条件に合うものを取り出します。 |
“==” | 一致を表します。a==bでaがbと等しいときTRUE(真)になります。 |
<=,>= | それぞれ以下、以上の意味を表します。条件を満たすときはTRUEを返します。 |
& | かつの意味です。(条件式A & 条件式B)で条件式Aと条件式Bを両方満たすとき、TRUEを表します。 |
a <- subset(df,df$X50m走 < 8)
a
b<-df[df[,4] < 8,]
b
c <- subset(df, df$上体起こし >=21 & df$反復横とび<=57)
c
d <- subset(df, df$握.力 == 38.68 & df$X50m走<8)
d
「第4回 Rを用いた統計講座(基礎編)」で学んだコマンドは、以下になります。
コマンド | 用法 |
read.csv | csv形式のファイル読み込みを行う関数です。”ファイル名.csv”の形式ファイルを読み込みます。 |
header | 1行目を列名として読み込むか否か判定する。header=T(True)で1行目は列名扱います。 |
row.names | データ読み込み時に行名を設定します。row.names = a でa列名を行明として扱います。空白で行明無しとして扱います。 |
fileEncoding | macの場合「fileEncoding=“CP932″」を入力しないと読み込みエラーになる場合があります |
df$列名 | 「列名」という名の列データを参照します。 |
df[ ,a] | a列目のデータを参照します。 |
df[b, ] | b行目のデータを参照します。 |
df[, c(a, b)] | a列目とb列目のデータを参照します。 |
subset(変数,条件) | 変数の条件に合うものを取り出します。subset(df,df$X50m走 <8 )では、dfという変数のX50m走列が8より小さいものを取り出します。 |
変数[行の条件,列の条件] | 変数内の条件に合うものを取り出します。 |
“==” | 一致を表します。a==bでaがbと等しいときTRUE(真)になります。 |
<=,>= | それぞれ以下、以上の意味を表します。条件を満たすときはTRUEを返します。 |
& | かつの意味です。(条件式A & 条件式B)で条件式Aと条件式Bを両方満たすとき、TRUEを表します。 |
コメント