library(palmerpenguins)
Attaching package: 'palmerpenguins'
The following objects are masked from 'package:datasets':
penguins, penguins_raw
library(ggplot2)
DT::datatable(penguins)palmerpenguins パッケージは、南極大陸のパルマ―群島に生息する三種類のペンギン(Gentoo:ジェンツーペンギン、Adelie:アデリーペンギン、Chinstrap:ヒゲペンギン)の体長や体重などに関する penguins データセットなどを収録したパッケージです。特に、penguins データセットは、探索的データ分析や可視化の練習で定番となっている iris データセットに代わる選択肢となることを目指して作成されています。
| 変数名 | データ型 | 概要 |
|---|---|---|
| species | factor | ペンギンの種類 |
| island | factor | 生息している島の名前 |
| bill_length_mm | double | くちばしの長さ [mm] |
| bill_depth_mm | double | くちばしの太さ [mm] |
| flipper_length_mm | integer | フリッパー(翼)の長さ [mm] |
| body_mass_g | integer | 体重 [g] |
| sex | factor | 性別 |
| year | integer | 測定年 |
library(palmerpenguins)
Attaching package: 'palmerpenguins'
The following objects are masked from 'package:datasets':
penguins, penguins_raw
library(ggplot2)
DT::datatable(penguins)# カラーパレットの定義
colors <- c("darkorange","darkred","darkcyan")
# 可視化の例
ggplot(na.omit(penguins),
aes(x = flipper_length_mm, y = body_mass_g)) +
geom_point(aes(color = species, shape = species),
size = 2.5, alpha = 0.7) +
scale_color_manual(values = colors) +
geom_smooth(method = "lm") +
labs(x = "フリッパー(翼)の長さ [mm]",
y = "体重 [g]",
color = "種類",
shape = "種類")`geom_smooth()` using formula = 'y ~ x'

ggplot(penguins, aes(x = island, fill = species)) +
geom_bar(alpha = 0.8) + # 棒グラフを指定
scale_fill_manual(values = colors, guide = "none") + # 塗り分け方を指定
facet_wrap(~species, ncol = 1) + # 種類ごとにグラフを分ける
coord_flip() + # x軸とy軸を入れ替えて水平にする
labs(y="データに含まれる個体数")
アデリーペンギンはすべての島で見つかっていますが、ヒゲペンギンは Dream 島、ジェンツーペンギンは Biscoe 島だけで生活しているようです。
ggplot(na.omit(penguins),
aes(x = bill_length_mm, y = bill_depth_mm)) +
geom_point(aes(shape = species),
color = "grey", size = 2.5, alpha = 0.7) +
geom_smooth(method = "lm") +
scale_color_manual(values = colors) +
labs(x = "くちばちの長さ [mm]", y = "くちばしの太さ [mm]")`geom_smooth()` using formula = 'y ~ x'

ペンギンたちのくちばしの長さと太さについて散布図を描いてみると、「くちばしは長いほど細い」という相関関係があることがわかります。
ggplot(na.omit(penguins),
aes(x = bill_length_mm, y = bill_depth_mm)) +
geom_point(aes(color = species, shape = species),
size = 2.5, alpha = 0.7) +
geom_smooth(method = "lm",
aes(color = species, group = species)) +
scale_color_manual(values = colors) +
labs(x = "くちばちの長さ [mm]", y = "くちばしの太さ [mm]",
color = "種類", shape = "種類")`geom_smooth()` using formula = 'y ~ x'

しかし、散布図をペンギンの種類ごとに色分けして観察すると、それぞれの種類の中では「くちばしは長いほど太い」という相関関係があることがわかります。
palmerpenguins の公式ページには、これらのほかにggplot2 パッケージを用いた可視化の例が豊富に示されています。