こんにちは。エンジニアの鷲見です。
近年ビッグデータという言葉を聞くようになって久しいですが、
それに伴い統計が注目されているようです。
「統計が最強の学問である」という本も売れているようですね。
というわけで、今回は統計解析ソフトウエアのRを紹介してみようと思います。
Rとは
マルチプラットフォームに対応している統計解析ソフトウエアです
(Windows、Mac、Unixすべてに対応しています)。
Rはフリーソフトウエアであり、無償で利用することができます。
また、CRANというネットワークにより、世界中のRユーザーが
作成したパッケージをダウンロードして使用することも出来ます。
ダウンロード・インストール
以下のサイトからダウンロードします。
http://cran.md.tsukuba.ac.jp/
インストールについてはプラットフォームで異なるため
ここでは記述しませんが、Webに情報がたくさんありますので
参考にされるとよいでしょう。
Rの基本的な使い方
Rの操作は基本的にCUIで行います。
コンソール画面の「>」の後ろに式を入力していきます。
演算
基本的な演算は一般的なプログラミング言語とほぼ同じです。
具体的には以下の通りです。
> 10 + 20 [1] 30 > 10 / 20 [1] 0.5 # -- べき乗・平方根・対数 > 2^3 # べき乗 [1] 8 > sqrt(64) # 平方根 [1] 8 > log(exp(2)) # 自然対数 [1] 2 > log10(100) # 常用対数 [1] 2 > log(100, base=10) # 底を指定する場合 [1] 2
代入
プログラミング言語と同じく変数に値を代入することができます。
代入はアロー演算子で行います。
> hoge <- 100 > hoge [1] 100
複数の値をまとめて扱う
Rでは複数の値を1つのデータとして扱うことが可能です。
> height <- c(168, 172, 180, 163, 192, 170) > height 168 172 180 163 192 170
行列
行列も扱うことができます。
例えば3行2列の行列は以下のように記述します。
> m <- matrix(c(11, 12, 13, 21, 22, 23), 3, 2) > m [,1] [,2] [1,] 11 21 [2,] 12 22 [3,] 13 23
外部データファイルの読み込み
外部データとして保存されたデータを
読み込むことが可能です。
CSVファイルを読み込むには以下のように記述します
> hoge <- read.csv("ファイル.txt")
関数
基本的な関数は以下の通りです。
データ数、合計、平均、分散、標準偏差、最大・最小
> length(c(1, 2, 3, 4, 5)) # データ数 [1] 5 > sum(c(1, 2, 3, 4, 5)) # 合計 [1] 15 > mean(c(1, 2, 3, 4, 5)) # 平均(avgではない) [1] 3 > var(c(1, 2, 3, 4, 5)) # 分散(不偏分散) [1] 2.5 > sd(c(1, 2, 3, 4, 5)) # 標準偏差 [1] 1.581139 > max(c(1, 2, 3, 4, 5)) # 最大 [1] 5 > min(c(1, 2, 3, 4, 5)) # 最小 [1] 1
データのヴィジュアライズ
gnuplotのようにデータを視覚的に表現することが可能です。
度数分布表
> table(c(1, 2, 1, 1, 2, 1, 2)) 1 2 4 3
ヒストグラム
> hist(c(1, 2, 3, 1, 1, 2))
> data1 data2 plot(data1, data2)
ヘルプ
コマンドがわからないときはヘルプを使用して調べることが可能です。
ヘルプは以下のように表示します。
# 関数について調べたいとき > help(max) # max関数について調べる # キーワードについて調べたいとき help.search("キーワード")
次回はもう少しRの機能については踏み込んでみたいと思います。