Rを触ってみる話②
前回↓
今回はパッケージについて。
なんか意外とRがPythonの知識で動かせて嬉しい。
パッケージのダウンロード、インストール
今回は'ggplot2'をインストールする。matplotlib的なやつか?
install.packages("ggplot2")でインストール
library("ggplot2")でロード
散布図
gplot内のqplotを使ってみる。(quick plotの略らしい)
qplot(Boston'age', Boston'medv')
ヒストグラム
引数一つにしたらいいだけ
qplot(Boston'age')
ここで、データフレームの特定の列を取り出すのに[]を使っていたのだが、$で表せることを知る。RStudioで予測変換的なの出るし。
python的には使いたい感あるが$が便利すぎるのでそっちを使う。
棒グラフ
なんかこの関数を+で足してく感じがいまいち慣れない。
frequency <- as.data.frame(table(train$Sex))
ggplot(frequency, aes(x=Var1, y=Freq)) +
geom_bar(stat="identity")
円グラフ
frequency <- as.data.frame(table(train$Sex))
ggplot(data, aes(x="", y=Freq, fill=Var1)) +
geom_bar(width = 1, stat = "identity") +
coord_polar("y", start=0)
クロス集計表
breaksにリストを入れればその範囲ごとに区切るし、整数を渡せば均等に切ってくれる。
ageGroup <- cut(Boston$age, breaks = 10)
medvGroup <- cut(Boston$medv, breaks = 10)
> table(ageGroup, medGroup)
medGroup
ageGroup (4.96,9.5] (9.5,14] (14,18.5] (18.5,23] (23,27.5] (27.5,32] (32,36.5] (36.5,41] (41,45.5] (45.5,50]
(2.8,12.6] 0 0 0 1 9 3 0 0 1 0
(12.6,22.3] 0 0 1 8 10 3 6 1 1 1
(22.3,32] 0 0 1 7 9 6 2 1 0 3
(32,41.7] 0 0 2 15 7 8 7 0 2 1
(41.7,51.4] 0 0 1 17 9 1 3 0 0 1
(51.4,61.2] 0 1 3 16 8 3 4 1 1 1
(61.2,70.9] 0 1 3 20 5 5 2 0 1 2
(70.9,80.6] 2 3 6 14 9 4 1 1 2 0
(80.6,90.3] 3 6 16 27 9 3 1 2 1 3
(90.3,100] 17 44 52 29 9 3 3 1 1 9
なんかズレた。
まだ慣れない。というか慣れてるpythonでやった方が早い。
続く。