与えられたデータについて見ていき、現状把握や、クレームの重要度に影響を及ぼす要因を探っていきます。
kaggle data description (データの説明)
ここからは、実際にデータを整理していきます(コード部分に興味のない人はコードは読み飛ばして頂いて結構です)。
参考:https://www.kaggle.com/dmi3kno/allstate-eda
準備
# ライブラリの読み込み
library(data.table)
library(dplyr)
library(ggplot2)
library(corrplot)
# データの読み込み
train <- fread("./data/case08_train.csv", showProgress = FALSE, data.table = FALSE)
### 前処理
# 数値、文字データ項目の分離
train_num <- train[, sapply(train, is.numeric)]
train_char <- train[, sapply(train, is.character)]
paste0("データ件数:",nrow(train), "件")
## [1] "データ件数:188318件"
paste0("項目数:", " 数値型:", ncol(train_num), " 文字型:", ncol(train_char))
## [1] "項目数: 数値型:16 文字型:116"
項目lossが予測対象になっていることから、クレーム処理にかかったコストだと推測されます。
ggplot(train,aes(x = loss)) +
geom_histogram()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
5000未満に絞り込み
filter(train, loss < 5000) %>%
ggplot(aes(x = loss)) +
geom_histogram()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
1000から2000がボリュームゾーンのようです。
select(train_num, -id) %>%
cor() %>%
corrplot(method="square", order="hclust")
lossと直接相関のある変数はありません。
「データから価値を創造する」一般社団法人データマーケティングラボラトリー
Copyright© DML All Rights Reserved.