setwd("C:/Users/jun.li/OneDrive - UiPath/00.Study/00.DataSciense/R/Udemy")
library(ISLR)
library(tidyverse)
3.1 グラフ化データ、整理
DEFALUT <- as_tibble(Default)
head(DEFALUT,n=10)
3.2 ggplotパッケージ
データの分布をggplot2パッケージでグラフ化
基本パッケージ
- plot(変数) #棒グラフ
- hist(変数) #ヒストグラム
- boxplot(変数) #箱ひげ図
オブションパッケージ
ggplot2パッケージ
- ggplot(データ、マッピング) #グラフの下準備
- geom_bar(調整値) #棒グラフ
- geom_histogram(調整値) #ヒストグラム
- geom_boxplot(調整値) #箱ひげ図
- geom_point(調整値) #散布図
# aes: aesthetic(美的感覚、視覚的特性)
# gglpot(data = データフレーム,
# mapping = aes(x = X軸変数,y = Y軸変数)) + #グラフ下地
# geom_bar(...) + ...
棒グラフ
X:default Y:カウント数
ggplot(data = DEFALUT,
mapping = aes(x = default)) + #グラフの下地用意
geom_bar(width = 0.3,fill = "steelblue") + #棒グラフ
theme_gray(base_size = 20) # 文字の基本サイズ調整

ヒストグラム
連続変数の値別のカウント数を確認する > X: balance Y:カウント数
ggplot(data = DEFALUT,
mapping = aes(x = balance)) + #グラフの下地用意
geom_histogram(bins = 50,#棒の数
fill = "steelblue",colour = "black" ) #棒グラフ

散布図①
二つの連続変数の分布を同時に確認する
X:income Y:balance
ggplot(data = DEFALUT,
mapping = aes(x = income,y = balance)) +
geom_point(colour="steelblue",size=0.5) +
geom_smooth(method = "lm")

散布図②
連続変数と離散変数の分布を同時に確認
X:balance Y:default
ggplot(data = DEFALUT,
mapping = aes(x=balance,y=default)) +
geom_point(colour = "steelblue",size = 0.5,
position = position_jitter(height = 0.3))

#position:点の配置、position_jitter()ずらし配置
箱ひげ図
離散変数の値別に連続変数の分布を確認する
X:default Y:balance
ggplot(data = DEFALUT,
mapping = aes(x=default,y=balance)) +
geom_boxplot(fill = "steelblue")

棒グラフ(グルーピング)
別のカテゴリー変数でグルーピングして棒グラフ
X:default Y:カウント数 studentでグルーピング
ggplot(data = DEFALUT,
mapping = aes(x=default,fill=student))+
geom_bar(width = 0.9,
position = position_dodge())

ヒストグラム(グルーピング)
X: balance Y:カウント数 defaultでグルーピング
# identity:配置調整なし(独立表示)
ggplot(data = DEFALUT,
mapping = aes(x = balance,fill = default)) + #グラフの下地用意
geom_histogram(bins = 50,#棒の数
colour = "black",#fillを削除、枠線色
position = position_identity(),alpha = 0.8) #透明度

散布図(グルーピング)
別のカテゴリー変数でグルーピングして散布図
X:income Y:balance、defaultでグルーピング
ggplot(data = DEFALUT,
mapping = aes(x = income,y=balance,
colour = default))+
geom_point(size=0.5) +
geom_smooth(method = "lm")

箱ひげ図(グルーピング)
別の離散変数でグルーピングして箱ひげ図を確認する
X:default Y:balance 、studentでグルーピング
ggplot(data = DEFALUT,
mapping = aes(x=default,y=balance,fill=student)) +
geom_boxplot()

3.3 グラフの保存
g <- ggplot(data = DEFALUT,
mapping = aes(x=default,y=balance,fill=student)) +
geom_boxplot()
# グラフの保存
ggsave(
plot = g,
filename = "boxplot.png",
height = 12,
width = 24,
units = "cm"
)
LS0tDQp0aXRsZTogIlIvUlN0dWRpbygzKS3jg4fjg7zjgr/jga7jgrDjg6njg5XljJYiDQpvdXRwdXQ6IA0KICBodG1sX25vdGVib29rOg0KICAgIHRvYzogdHJ1ZQ0KLS0tDQoNCmBgYHtyfQ0KIyBXb3JrZGlyZWN0b3J544KS6Kit5a6aDQpzZXR3ZCgiQzovVXNlcnMvanVuLmxpL09uZURyaXZlIC0gVWlQYXRoLzAwLlN0dWR5LzAwLkRhdGFTY2llbnNlL1IvVWRlbXkiKQ0KIyDjgrXjg7Pjg5fjg6vjg4fjg7zjgr/nlKgNCmxpYnJhcnkoSVNMUikNCiMg44OH44O844K/5pW05b2i55SoDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmBgYA0KDQojIDMuMSDjgrDjg6njg5XljJbjg4fjg7zjgr/jgIHmlbTnkIYNCg0KYGBge3J9DQojdGliYmxl44Go44GE44GG44OH44O844K/5b2i5byP44Gn5qC857SNDQpERUZBTFVUIDwtIGFzX3RpYmJsZShEZWZhdWx0KQ0KaGVhZChERUZBTFVULG49MTApDQpgYGANCg0KIyAzLjIgZ2dwbG9044OR44OD44Kx44O844K4DQoNCuODh+ODvOOCv+OBruWIhuW4g+OCkmdncGxvdDLjg5Hjg4PjgrHjg7zjgrjjgafjgrDjg6njg5XljJYNCg0KIyMg5Z+65pys44OR44OD44Kx44O844K4DQoNCjEuICBwbG90KOWkieaVsCnjgIAj5qOS44Kw44Op44OVDQoyLiAgaGlzdCjlpInmlbAp44CAI+ODkuOCueODiOOCsOODqeODoA0KMy4gIGJveHBsb3Qo5aSJ5pWwKeOAgCPnrrHjgbLjgZLlm7MNCg0K44Kq44OW44K344On44Oz44OR44OD44Kx44O844K4DQoNCiMjIGdncGxvdDLjg5Hjg4PjgrHjg7zjgrgNCg0KMS4gIGdncGxvdCjjg4fjg7zjgr/jgIHjg57jg4Pjg5Tjg7PjgrApICPjgrDjg6njg5Xjga7kuIvmupblgpkNCjIuICBnZW9tX2Jhcijoqr/mlbTlgKQpICPmo5LjgrDjg6njg5UNCjMuICBnZW9tX2hpc3RvZ3JhbSjoqr/mlbTlgKQpICPjg5Ljgrnjg4jjgrDjg6njg6ANCjQuICBnZW9tX2JveHBsb3Qo6Kq/5pW05YCkKSAj566x44Gy44GS5ZuzDQo1LiAgZ2VvbV9wb2ludCjoqr/mlbTlgKQpICPmlaPluIPlm7MNCg0KYGBge3J9DQojIGFlczogYWVzdGhldGljKOe+jueahOaEn+immuOAgeimluimmueahOeJueaApykNCiMgZ2dscG90KGRhdGEgPSDjg4fjg7zjgr/jg5Xjg6zjg7zjg6AsDQojICAgICAgICBtYXBwaW5nID0gYWVzKHggPSBY6Lu45aSJ5pWwLHkgPSBZ6Lu45aSJ5pWwKSkgKyAj44Kw44Op44OV5LiL5ZywDQojIGdlb21fYmFyKC4uLikgKyAuLi4NCmBgYA0KDQojIyDmo5LjgrDjg6njg5UNCg0KWDpkZWZhdWx0IFk644Kr44Km44Oz44OI5pWwDQoNCmBgYHtyfQ0KZ2dwbG90KGRhdGEgPSBERUZBTFVULA0KICAgICAgIG1hcHBpbmcgPSBhZXMoeCA9IGRlZmF1bHQpKSArICPjgrDjg6njg5Xjga7kuIvlnLDnlKjmhI8NCiAgZ2VvbV9iYXIod2lkdGggPSAwLjMsZmlsbCA9ICJzdGVlbGJsdWUiKSArICPmo5LjgrDjg6njg5UNCiAgdGhlbWVfZ3JheShiYXNlX3NpemUgPSAyMCkgIyDmloflrZfjga7ln7rmnKzjgrXjgqTjgrroqr/mlbQNCmBgYA0KDQoNCiMjIOODkuOCueODiOOCsOODqeODoA0KDQrpgKPntprlpInmlbDjga7lgKTliKXjga7jgqvjgqbjg7Pjg4jmlbDjgpLnorroqo3jgZnjgosNCj4gWDogYmFsYW5jZSBZOuOCq+OCpuODs+ODiOaVsA0KDQpgYGB7cn0NCmdncGxvdChkYXRhID0gREVGQUxVVCwNCiAgICAgICBtYXBwaW5nID0gYWVzKHggPSBiYWxhbmNlKSkgKyAj44Kw44Op44OV44Gu5LiL5Zyw55So5oSPDQogIGdlb21faGlzdG9ncmFtKGJpbnMgPSA1MCwj5qOS44Gu5pWwDQogICAgICBmaWxsID0gInN0ZWVsYmx1ZSIsY29sb3VyID0gImJsYWNrIiApICPloZfoibLjgajmnqDnt5roibINCmBgYA0KDQojIyDmlaPluIPlm7PikaANCg0K5LqM44Gk44Gu6YCj57aa5aSJ5pWw44Gu5YiG5biD44KS5ZCM5pmC44Gr56K66KqN44GZ44KLDQoNCj4gWDppbmNvbWUgWTpiYWxhbmNlDQoNCmBgYHtyfQ0KZ2dwbG90KGRhdGEgPSBERUZBTFVULA0KICAgICAgIG1hcHBpbmcgPSBhZXMoeCA9IGluY29tZSx5ID0gYmFsYW5jZSkpICsgDQogIGdlb21fcG9pbnQoY29sb3VyPSJzdGVlbGJsdWUiLHNpemU9MC41KSArICPngrnjga7oibLjgajlpKfjgY3jgZUNCiAgZ2VvbV9zbW9vdGgobWV0aG9kID0gImxtIikgI+i/keS8vOe3mihsbTpsaW5lYXIgbW9kZWwp77ya5Zue5biw55u057eaDQpgYGANCg0KIyMg5pWj5biD5Zuz4pGhDQoNCumAo+e2muWkieaVsOOBqOmbouaVo+WkieaVsOOBruWIhuW4g+OCkuWQjOaZguOBq+eiuuiqjQ0KDQo+IFg6YmFsYW5jZSBZOmRlZmF1bHQNCg0KYGBge3J9DQpnZ3Bsb3QoZGF0YSA9IERFRkFMVVQsDQogICAgICAgbWFwcGluZyA9IGFlcyh4PWJhbGFuY2UseT1kZWZhdWx0KSkgKyANCiAgZ2VvbV9wb2ludChjb2xvdXIgPSAic3RlZWxibHVlIixzaXplID0gMC41LA0KICAgICAgICAgICAgIHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyKGhlaWdodCA9IDAuMykpDQojcG9zaXRpb24654K544Gu6YWN572u44CBcG9zaXRpb25faml0dGVyKCnjgZrjgonjgZfphY3nva4NCmBgYA0KDQojIyDnrrHjgbLjgZLlm7MNCg0K6Zui5pWj5aSJ5pWw44Gu5YCk5Yil44Gr6YCj57aa5aSJ5pWw44Gu5YiG5biD44KS56K66KqN44GZ44KLDQoNCj4gWDpkZWZhdWx0IFk6YmFsYW5jZQ0KDQpgYGB7cn0NCmdncGxvdChkYXRhID0gREVGQUxVVCwNCiAgICAgICBtYXBwaW5nID0gYWVzKHg9ZGVmYXVsdCx5PWJhbGFuY2UpKSArIA0KICBnZW9tX2JveHBsb3QoZmlsbCA9ICJzdGVlbGJsdWUiKQ0KDQpgYGANCg0KIyMg5qOS44Kw44Op44OV77yI44Kw44Or44O844OU44Oz44Kw77yJDQoNCuWIpeOBruOCq+ODhuOCtOODquODvOWkieaVsOOBp+OCsOODq+ODvOODlOODs+OCsOOBl+OBpuajkuOCsOODqeODlQ0KDQo+IFg6ZGVmYXVsdCBZOuOCq+OCpuODs+ODiOaVsCBzdHVkZW5044Gn44Kw44Or44O844OU44Oz44KwDQoNCmBgYHtyfQ0KIyBwb3N0aW9uX2RvZGdl5qiq44Gr6YWN572uDQpnZ3Bsb3QoZGF0YSA9IERFRkFMVVQsDQogICAgICAgbWFwcGluZyA9IGFlcyh4PWRlZmF1bHQsZmlsbD1zdHVkZW50KSkrDQogIGdlb21fYmFyKHdpZHRoID0gMC45LCNmaWxs44KS5YmK6ZmkDQogICAgICAgICAgIHBvc2l0aW9uID0gcG9zaXRpb25fZG9kZ2UoKSkNCmBgYA0KDQojIyDjg5Ljgrnjg4jjgrDjg6njg6Ao44Kw44Or44O844OU44Oz44KwKQ0KDQo+IFg6IGJhbGFuY2UgWTrjgqvjgqbjg7Pjg4jmlbAgZGVmYXVsdOOBp+OCsOODq+ODvOODlOODs+OCsA0KDQpgYGB7cn0NCiMgaWRlbnRpdHk66YWN572u6Kq/5pW044Gq44GX77yI54us56uL6KGo56S677yJDQpnZ3Bsb3QoZGF0YSA9IERFRkFMVVQsDQogICAgICAgbWFwcGluZyA9IGFlcyh4ID0gYmFsYW5jZSxmaWxsID0gZGVmYXVsdCkpICsgI+OCsOODqeODleOBruS4i+WcsOeUqOaEjw0KICBnZW9tX2hpc3RvZ3JhbShiaW5zID0gNTAsI+ajkuOBruaVsA0KICAgICAgY29sb3VyID0gImJsYWNrIiwjZmlsbOOCkuWJiumZpOOAgeaeoOe3muiJsg0KICAgICAgcG9zaXRpb24gPSBwb3NpdGlvbl9pZGVudGl0eSgpLGFscGhhID0gMC44KSAj6YCP5piO5bqmDQpgYGANCiMjIOaVo+W4g+WbsyjjgrDjg6vjg7zjg5Tjg7PjgrApDQoNCuWIpeOBruOCq+ODhuOCtOODquODvOWkieaVsOOBp+OCsOODq+ODvOODlOODs+OCsOOBl+OBpuaVo+W4g+Wbsw0KDQo+IFg6aW5jb21lIFk6YmFsYW5jZeOAgWRlZmF1bHTjgafjgrDjg6vjg7zjg5Tjg7PjgrANCg0KYGBge3J9DQpnZ3Bsb3QoZGF0YSA9IERFRkFMVVQsDQogICAgICAgbWFwcGluZyA9IGFlcyh4ID0gaW5jb21lLHk9YmFsYW5jZSwNCiAgICAgICAgICAgICAgICAgICAgIGNvbG91ciA9IGRlZmF1bHQpKSsNCiAgZ2VvbV9wb2ludChzaXplPTAuNSkgKyANCiAgZ2VvbV9zbW9vdGgobWV0aG9kID0gImxtIikNCmBgYA0KDQojIyDnrrHjgbLjgZLlm7PvvIjjgrDjg6vjg7zjg5Tjg7PjgrDvvIkNCg0K5Yil44Gu6Zui5pWj5aSJ5pWw44Gn44Kw44Or44O844OU44Oz44Kw44GX44Gm566x44Gy44GS5Zuz44KS56K66KqN44GZ44KLDQoNCj4gWDpkZWZhdWx0IFk6YmFsYW5jZSDjgIFzdHVkZW5044Gn44Kw44Or44O844OU44Oz44KwDQoNCmBgYHtyfQ0KZ2dwbG90KGRhdGEgPSBERUZBTFVULA0KICAgICAgIG1hcHBpbmcgPSBhZXMoeD1kZWZhdWx0LHk9YmFsYW5jZSxmaWxsPXN0dWRlbnQpKSArIA0KICBnZW9tX2JveHBsb3QoKQ0KYGBgDQojIDMuMyDjgrDjg6njg5Xjga7kv53lrZgNCg0KYGBge3J9DQpnIDwtIGdncGxvdChkYXRhID0gREVGQUxVVCwNCiAgICAgICBtYXBwaW5nID0gYWVzKHg9ZGVmYXVsdCx5PWJhbGFuY2UsZmlsbD1zdHVkZW50KSkgKyANCiAgZ2VvbV9ib3hwbG90KCkNCmBgYA0KDQpgYGB7cn0NCiMg44Kw44Op44OV44Gu5L+d5a2YDQpnZ3NhdmUoDQogIHBsb3QgPSBnLA0KICBmaWxlbmFtZSA9ICJib3hwbG90LnBuZyIsDQogIGhlaWdodCA9IDEyLA0KICB3aWR0aCA9IDI0LA0KICB1bml0cyA9ICJjbSINCikNCmBgYA0KDQo=