2020年2月28日金曜日

統計ソフトを使って、グラフを作成してみよう。その8


無料の使い勝手のいい統計ソフトが普及してきた。
 人工知能への第一歩と考えてもいいのかもしれない。

 前回、確率密度曲線を重ねる方法を紹介した。
 標本をiris としていた訳だが、筆者の使い慣れたdiamonds でも同じことができるのか、確かめてみた。

 まず、summary(diamonds) で中身を見てみよう。

 summary(diamonds)
carat                  cut                    color               clarity                        depth
Min. :0.2000       Fair : 1610           D: 6775      SI1 :13065           Min. :43.00
1st Qu.:0.4000    Good : 4906         E: 9797      VS2 :12258         1st Qu.:61.00
Median :0.7000  Very Good:12082 F: 9542       SI2 : 9194           Median :61.80
Mean :0.7979      Premium :13791 G:11292      VS1 : 8171          Mean :61.75
3rd Qu.:1.0400    Ideal :21551        H: 8304      VVS2 : 5066        3rd Qu.:62.50
Max. :5.0100                                    I: 5422       VVS1 : 3655        Max. :79.00
J: 2808 (Other): 2531

table                       price
Min. :43.00            Min. : 326
1st Qu.:56.00         1st Qu.: 950
Median :57.00        Median : 2401
Mean :57.46           Mean : 3933
3rd Qu.:59.00         3rd Qu.: 5324
Max. :95.00             Max. :18823

 縦横がなかなか揃わないので、一部を割愛した。

 上をみると、cut 、color、clarity  あたりで、irisと同様のことができそうだ。
 まず、color で試みる。なお、xlim は外した。また、size は線の太さ、alpha は透過度。

     ggplot(diamonds,aes(price))+geom_density(aes(fill=color),size=0.5,alpha=0.5)


 次に、cut でやってみた。

    ggplot(diamonds,aes(price))+geom_density(aes(fill=cut),size=0.5,alpha=0.5)


 この方法は、文としても簡単だし、使い勝手のいい方法だな、と思った。