読者です 読者をやめる 読者になる 読者になる

データのばらつきを視覚化する (2)

r

 以前、データのばらつきを視覚化する (1) という記事で、箱ひげ図の上に個々のデータの分布を重ねて描く方法を紹介しました。今回は、rug関数を使って個々のデータの分布を可視化する方法を紹介します。以下、irisデータにおけるsepal length(がくの長さ)とsepal width(がくの幅)のデータを分析対象とします。

# 分析データの確認
iris[, 1 : 2]

 上記のスクリプトを実行すると、以下のような結果が表示されます。

    Sepal.Length Sepal.Width
1            5.1         3.5
2            4.9         3.0
3            4.7         3.2
4            4.6         3.1
5            5.0         3.6
  (以下略)

 このデータを使って箱ひげ図を作成し、rug関数で個々のデータの分布を重ねて描くには、以下のようなスクリプトを書きます。*1

# 箱ひげ図の作成
boxplot(iris[, 1 : 2], col = "green", notch = TRUE)
# 個々のデータの分布を重ね描き
rug(iris[, 1], side = 2)
rug(iris[, 2], side = 4)

 上記のスクリプトを実行すると、以下のような図が表示されます。

f:id:langstat:20161204124123p:plain

 因みに、rug関数を使って、散布図などに重ね書きをすることも可能です。

# 散布図の作成
plot(iris[, 1 : 2])
# 個々のデータの分布を重ね描き
rug(iris[, 1], side = 1)
rug(iris[, 2], side = 2)

 上記のスクリプトを実行すると、以下のような図が表示されます。

f:id:langstat:20161204124252p:plain

*1:rug関数の引数sideで1を指定すると図の下側に、2を指定すると図の左側に、3を指定すると図の上側に、4を指定すると図の右側に、個々のデータの分布が表示されます。