
の続きです。データ分析をしやすいように、いくつかデータフレームに手を加えます。
はじめに、colorをファクター型にします。

白ワインのほうが多い事がわかります。
次に各変数の数値範囲を統一したいと思うので、自作の関数を作ります。

0から1にしなかったのは、あとで対数変換するかもしれないからです。
この自作関数、rescale12()をcolorとquality以外の変数に適用します。
across()関数を使います。

こうしたら、各変数の箱ひげ図をみてみましょう。


どの変数も外れ値がたくさんありますね。
ヒストグラムも作成してみます。


residual_sugar, chlorides, free_sulfer_dioxideの3つは、一番左の棒が一番高いので、対数変換したほうがよいように思います。

もう一度ヒストグラムを描いてみます。


こんな感じになりました。
とりあえず、こんな感じでデータの前処理は終わります。
今回は以上です。
次回は、
です。
はじめから読むには、
です。
今回のコードは以下になります。
#
# colorをファクター型にする
df <- df_raw |>
mutate(color = as.factor(color))
summary(df$color)
#
# 変数を1~2の範囲に変換する関数
rescale12 <- function(x) {
(x - min(x)) / (max(x) - min(x)) + 1
}
#
# rescale12()のテスト
rescale12(1:10)
rescale12(3:8)
#
# rescale12()を使う
df <- df |>
mutate(across(fixed_acidity:alcohol, rescale12))
summary(df)
#
# 各変数の箱ひげ図
par(mfrow = c(3, 4))
for (i in 2:12) {
boxplot(df[ , i], main = colnames(df)[i])
}
par(mfrow = c(1, 1))
#
# 各変数のヒストグラム
par(mfrow = c(3, 4))
for (j in 2:12) {
hist(dfj, main = colnames(df)[j],
xlab = "")
}
par(mfrow = c(1, 1))
#
# residual_sugar, chlorides, free_sulfur_dioxideを対数変換
df <- df |>
mutate(across(residual_sugar:free_sulfur_dioxide, log)) |>
mutate(across(residual_sugar:free_sulfur_dioxide, rescale12))
#
# ヒストグラム
par(mfrow = c(3, 1))
hist(df$residual_sugar,breaks = 100)
hist(df$chlorides, breaks = 100)
hist(df$free_sulfur_dioxide, breaks = 100)
par(mfrow = c(1, 1))
#
(冒頭の画像は、Bing Image Creator で生成しました。プロンプトは Close up of yellow Adonis ramosa flowers, flowering on the snow land, under the blue sky. photo です。)