R(アール)
ダウンロードとインストール
Rは変数宣言などをする必要がなく、コーディングもシンプルな言語です。
WEB上でたくさんのライブラリーを作られているので、そのライブラリーを呼び出すだけで、複雑な手法を使うことができる。
複雑なアルゴリズムなのにもかかわらず、わずか数行で記述することができる。
また、グラフィック描画にも優れており、ggplotというグラフィック描画ライブラリーを使うと非常に見やすいきれいなグラフを作ることができる。
データの入力
プログラムをコンソールに直接入力して実行することもできますが、Rでは「スクリプト」にプログラムを記述して実行する
スクリプトにプログラムを書く⇒実行
- 実行の仕方:「Ctrl」+「R」(「Ctrl」を押しながら「R」)
- 保存:「Ctrl」+「S」
- やりなおし:「Ctrl」+「Z」
- 進む:「Ctrl」+「Y」
Rでのコメントアウトは”#”
(例)
四則演算
データの入力
C( )で複数のデータをまとめて入力
(例)
平均・分散の計算
「R」では、平均・分散を簡単に計算することができる
- 平均を求める関数:mean()
- 分散を求める関数:var()
「R」では分散は「不偏分散」として定義されていることに注意
「R」での平均・分散の計算
(例)
データの視覚化
ヒストグラムや散布図を描いて視覚化することができる
ヒストグラムの作成
基本的な文法
hist()で利用できる主な引数
- breaks : 階級幅の設定
- prob: Y軸の取り方(頻度、確率)
成績データ
2つの学校A,Bにおいて、1年生の数学の学力の差があるかどうか調べるため、A校から8人、B校から7人を無作為に選んで、実力テストを実施したところ、次のような結果が出た。
A校 | 75 | 72 | 86 | 97 | 83 | 67 | 90 | 78 |
---|---|---|---|---|---|---|---|---|
B校 | 71 | 80 | 53 | 63 | 85 | 62 | 55 |
次のプログラムでヒストグラムを描くことができる
A <- c(75,72,86,97,83,67,90,78)
B <- c(71,80,53,63,85,62,55)
par(mfrow=c(2,1))
br <- seq(40,100,10)
hist(A,breaks=br,prob=T)
hist(B,breaks=br,prob=T)
乱数の生成
Rでは、種々の乱数を発生させることができる
今回は、正規乱数を発生させて、そのヒストグラムを描きます
- 正規乱数を発生させる場合と同じ要領で、様々な乱数を発生させることができる
正規乱数を発生させるための関数
rnorm(n=標本数,mean=平均,sd=標準偏差)
次のプログラムでヒストグラムを描くことができる
data <- rnorm(n=1000,mean=0,sd=1)
hist(data,prob=T)
散布図を作成
基本的な文法
Plot(x,y)
成績データ
ある高校の無作為に抽出した7人の物理と数学のテスト結果である。
物理 | 55 | 70 | 75 | 65 | 80 | 60 | 81 |
---|---|---|---|---|---|---|---|
数学 | 65 | 70 | 80 | 70 | 90 | 65 | 95 |
次のプログラムでヒストグラムを描くことができる
x <-c (55,70,75,65,80,60,81)
y <-c (65,70,80,70,90,65,95)
plot(x,y, xlab="物理",ylab="数学")