
の続きです。前回はテキストファイルのデータをRに読み込みました。今回はデータをグラフなどにして、EDA(Exploratory Data Analysis: 探索的データ分析)をします。
このデータは、Donated_Bloodを正しく分類する、というのが目標になりますので、Donated_Bloodと他の変数との関係を把握することが重点となります。
まずは、各変数同士の相関係数をチェックします。

Donated_Bloodとの関係に注目すると、Recencyは負の相関、Frequencyは正の相関、Monetaryは正の相関、Timeは負の相関ですが、ほとんどゼロという関係です。
そして、注目したいのは、FrequencyとMonetaryの相関が1.00ということです。つまり、Frequency == Monearyということですね。Frequencyは献血回数、Monetaryは献血量ですが1回の献血量は決まっている、ということですね。Frequencyの最小値が1で、Monetaryの最小値が250なので、1回の献血量は250c.c.ですね。日本だと200か400かの選択だったと思いますが、台湾は250の1種類だけなのですね。
ということなので、Monetaryは削除します。

Recency, Frequency, Timeの3つの変数で予測しないといけないのは難しいかもですね。
FrequencyとTimeの相関が0.63と比較的高い相関です。
RecencyとDonated_Bloodの関係をグラフにします。Recencyは数値型、Donated_Bloodは数値型ですが、1か0かの2値のものなので、ファクター型とみなしてもいいでしょう。数値型とファクター型のデータなので、箱ひげ図を描いてみましょう。


おー、これは結構はっきりと別れましたね。Recencyが小さい値のときはDonated_Bloodは1という関係性がわかりますね。
次は、FrequencyとDonated_Bloodです。これも箱ひげ図です。


こんどは、Frequencyが大きな値のほうが、Donated_Bloodは1になる関係ですね。Recencyよりは、はっきりとは区別はできない感じです。
最後はTimeとDonated_Bloodの箱ひげ図です。


TimeはDonated_Bloodとはあまり関係性はないようですね。これはTimeとDonated_Bloodとの相関係数が-0.0356とほとんどゼロに近いことと整合しています。
RecencyがDonated_Bloodを予測するには有効そうだ、ということがわかりました。
今回は以上です。
次回は、
です。
はじめから読むには、
です。
今回のコードは以下になります。
#
# 変数同士の相関係数
cor(df)
#
# Monetaryの削除
df <- df |>
select(-Monetary)
df
#
# RecencyとDonated_Bloodの箱ひげ図
df |>
mutate(Donated_Blood = as.factor(Donated_Blood)) |>
ggplot(aes(x = Donated_Blood, y = Recency)) +
geom_boxplot(aes(fill = Donated_Blood))
#
# FrequencyとDonated_Bloodの箱ひげ図
df |>
mutate(Donated_Blood = as.factor(Donated_Blood)) |>
ggplot(aes(x = Donated_Blood, y = Frequency)) +
geom_boxplot(aes(fill = Donated_Blood))
#
# Timeと箱ひげ図
df |>
mutate(Donated_Blood = as.factor(Donated_Blood)) |>
ggplot(aes(x = Donated_Blood, y = Time)) +
geom_boxplot(aes(fill = Donated_Blood))
#
(冒頭の画像は、Bing Image Creator で生成しました。プロンプトは、Beautiful landscape of natural large fall, blue sky, close up of 'Hamamelis japonica' flowers, photo です。)