準備サイト を参考に,必要なプログラム,パッケージを準備しましょう。
1+3
## [1] 4
3-5
## [1] -2
5*7
## [1] 35
8/2
## [1] 4
sqrt(4)
## [1] 2
help(sqrt)
obj <- 2
obj
## [1] 2
obj2 <- 2
obj3 <- 3
obj2 + obj3
## [1] 5
obj <- 1:10
obj
## [1] 1 2 3 4 5 6 7 8 9 10
obj * 2
## [1] 2 4 6 8 10 12 14 16 18 20
obj <- matrix(c(1:10),nrow=5)
obj
## [,1] [,2]
## [1,] 1 6
## [2,] 2 7
## [3,] 3 8
## [4,] 4 9
## [5,] 5 10
obj * 2
## [,1] [,2]
## [1,] 2 12
## [2,] 4 14
## [3,] 6 16
## [4,] 8 18
## [5,] 10 20
obj[1,]
## [1] 1 6
obj[,2]
## [1] 6 7 8 9 10
obj<-list(name=c("kosugi","tanaka","suzuki"),
gender=c("male","female","male"),
height=c(170,160),
weight=c(70.6,80.9,90.6,40.3))
obj
## $name
## [1] "kosugi" "tanaka" "suzuki"
##
## $gender
## [1] "male" "female" "male"
##
## $height
## [1] 170 160
##
## $weight
## [1] 70.6 80.9 90.6 40.3
obj$name
## [1] "kosugi" "tanaka" "suzuki"
str(obj)
## List of 4
## $ name : chr [1:3] "kosugi" "tanaka" "suzuki"
## $ gender: chr [1:3] "male" "female" "male"
## $ height: num [1:2] 170 160
## $ weight: num [1:4] 70.6 80.9 90.6 40.3
obj$gender <- as.factor(obj$gender)
str(obj)
## List of 4
## $ name : chr [1:3] "kosugi" "tanaka" "suzuki"
## $ gender: Factor w/ 2 levels "female","male": 2 1 2
## $ height: num [1:2] 170 160
## $ weight: num [1:4] 70.6 80.9 90.6 40.3
obj<-data.frame(
list(name=c("kosugi","tanaka","suzuki"),
gender=c(1,2,1),
hight=c(170,160,170),
weight=c(70.6,80.9,90.6)
)
)
str(obj)
## 'data.frame': 3 obs. of 4 variables:
## $ name : Factor w/ 3 levels "kosugi","suzuki",..: 1 3 2
## $ gender: num 1 2 1
## $ hight : num 170 160 170
## $ weight: num 70.6 80.9 90.6
obj$gender<-factor(obj$gender,labels=c("male","female"))
obj
name | gender | hight | weight |
---|---|---|---|
kosugi | male | 170 | 70.6 |
tanaka | female | 160 | 80.9 |
suzuki | male | 170 | 90.6 |
library(tidyverse)
## ─ Attaching packages ────────────────────────────────────── tidyverse 1.2.1 ─
## ✔ ggplot2 3.1.0 ✔ purrr 0.3.0
## ✔ tibble 2.0.1 ✔ dplyr 0.7.8
## ✔ tidyr 0.8.2 ✔ stringr 1.3.1
## ✔ readr 1.3.1 ✔ forcats 0.3.0
## ─ Conflicts ──────────────────────────────────────── tidyverse_conflicts() ─
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
M1 <- read_csv("M1score.csv",na=".")
## Parsed with column specification:
## cols(
## .default = col_double(),
## 演者 = col_character()
## )
## See spec(...) for full column specifications.
head(M1)
年代 | 演者 | ネタ順 | 立川志らく | 塙宣之 | 上沼恵美子 | 松本人志 | 博多大吉 | 春風亭小朝 | 中川礼二 | 渡辺正行 | オール巨人 | 増田英彦 | 岩尾望 | 吉田敬 | 徳井義実 | 富澤たけし | 石田明 | 佐藤哲夫 | 哲夫 | 島田紳助 | 南原清隆 | 大竹まこと | 宮迫博之 | 中田カウス | 東国原英夫 | ラサール石井 | 島田洋七 | 西川きよし | 立川談志 | 鴻上尚史 | 青島幸男 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
18 | 見取り図 | 1 | 85 | 85 | 88 | 83 | NA | NA | 91 | NA | 88 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | スーパーマラドーナ | 2 | 88 | 89 | 89 | 85 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 89 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | かまいたち | 3 | 88 | 92 | 94 | 90 | NA | NA | 92 | NA | 89 | NA | NA | NA | NA | 91 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ジャルジャル | 4 | 99 | 93 | 88 | 92 | NA | NA | 93 | NA | 93 | NA | NA | NA | NA | 90 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ギャロップ | 5 | 86 | 89 | 89 | 86 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 87 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ゆにばーす | 6 | 87 | 82 | 84 | 80 | NA | NA | 91 | NA | 84 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
summary(M1)
## 年代 演者 ネタ順 立川志らく
## Min. : 1.000 Length:129 Min. : 1.000 Min. :85.00
## 1st Qu.: 4.000 Class :character 1st Qu.: 3.000 1st Qu.:87.25
## Median : 8.000 Mode :character Median : 5.000 Median :88.50
## Mean : 8.721 Mean : 5.093 Mean :90.50
## 3rd Qu.:15.000 3rd Qu.: 7.000 3rd Qu.:93.00
## Max. :18.000 Max. :10.000 Max. :99.00
## NA's :119
## 塙宣之 上沼恵美子 松本人志 博多大吉
## Min. :82.0 Min. :81.00 Min. :70.00 Min. :50.00
## 1st Qu.:89.0 1st Qu.:89.00 1st Qu.:85.00 1st Qu.:70.00
## Median :91.0 Median :90.00 Median :89.00 Median :84.00
## Mean :90.5 Mean :91.16 Mean :88.13 Mean :79.13
## 3rd Qu.:93.0 3rd Qu.:95.00 3rd Qu.:93.00 3rd Qu.:91.00
## Max. :98.0 Max. :98.00 Max. :97.00 Max. :97.00
## NA's :119 NA's :73 NA's :46 NA's :82
## 春風亭小朝 中川礼二 渡辺正行 オール巨人
## Min. :65.00 Min. :87.00 Min. :75.00 Min. :79.00
## 1st Qu.:80.00 1st Qu.:89.25 1st Qu.:87.00 1st Qu.:86.00
## Median :88.00 Median :91.00 Median :89.00 Median :88.50
## Mean :84.28 Mean :91.05 Mean :88.16 Mean :88.55
## 3rd Qu.:90.00 3rd Qu.:93.00 3rd Qu.:90.50 3rd Qu.:91.00
## Max. :95.00 Max. :96.00 Max. :95.00 Max. :96.00
## NA's :100 NA's :91 NA's :74 NA's :73
## 増田英彦 岩尾望 吉田敬 徳井義実
## Min. :85 Min. :85.00 Min. :83.00 Min. :88.00
## 1st Qu.:87 1st Qu.:89.00 1st Qu.:85.00 1st Qu.:89.00
## Median :89 Median :90.00 Median :89.00 Median :89.00
## Mean :89 Mean :90.67 Mean :87.56 Mean :90.56
## 3rd Qu.:91 3rd Qu.:92.00 3rd Qu.:90.00 3rd Qu.:91.00
## Max. :93 Max. :96.00 Max. :93.00 Max. :96.00
## NA's :120 NA's :120 NA's :120 NA's :120
## 富澤たけし 石田明 佐藤哲夫 哲夫
## Min. :86.00 Min. :83 Min. :88.00 Min. :87.00
## 1st Qu.:89.00 1st Qu.:87 1st Qu.:89.00 1st Qu.:88.00
## Median :91.00 Median :88 Median :90.00 Median :90.00
## Mean :90.42 Mean :89 Mean :90.56 Mean :89.78
## 3rd Qu.:92.00 3rd Qu.:92 3rd Qu.:92.00 3rd Qu.:91.00
## Max. :94.00 Max. :94 Max. :93.00 Max. :93.00
## NA's :110 NA's :120 NA's :120 NA's :120
## 島田紳助 南原清隆 大竹まこと 宮迫博之
## Min. : 50.00 Min. :76.00 Min. :75.00 Min. :88
## 1st Qu.: 80.25 1st Qu.:84.75 1st Qu.:82.00 1st Qu.:90
## Median : 86.00 Median :88.00 Median :85.00 Median :91
## Mean : 84.77 Mean :87.78 Mean :85.18 Mean :92
## 3rd Qu.: 90.00 3rd Qu.:90.25 3rd Qu.:89.00 3rd Qu.:93
## Max. :100.00 Max. :98.00 Max. :97.00 Max. :98
## NA's :47 NA's :93 NA's :57 NA's :120
## 中田カウス 東国原英夫 ラサール石井 島田洋七
## Min. :79.00 Min. :85.00 Min. :68.00 Min. :75.00
## 1st Qu.:86.00 1st Qu.:86.00 1st Qu.:82.00 1st Qu.:84.00
## Median :90.00 Median :88.00 Median :86.00 Median :90.00
## Mean :89.98 Mean :87.67 Mean :86.84 Mean :88.09
## 3rd Qu.:95.00 3rd Qu.:89.00 3rd Qu.:92.00 3rd Qu.:92.00
## Max. :98.00 Max. :92.00 Max. :96.00 Max. :98.00
## NA's :48 NA's :120 NA's :74 NA's :84
## 西川きよし 立川談志 鴻上尚史 青島幸男
## Min. :75.00 Min. :50 Min. :73.00 Min. :75.00
## 1st Qu.:80.00 1st Qu.:70 1st Qu.:82.25 1st Qu.:76.25
## Median :86.00 Median :70 Median :83.50 Median :80.00
## Mean :85.68 Mean :70 Mean :81.80 Mean :81.50
## 3rd Qu.:90.00 3rd Qu.:70 3rd Qu.:84.00 3rd Qu.:85.00
## Max. :97.00 Max. :80 Max. :85.00 Max. :90.00
## NA's :110 NA's :120 NA's :119 NA's :119
str(M1)
## Classes 'spec_tbl_df', 'tbl_df', 'tbl' and 'data.frame': 129 obs. of 32 variables:
## $ 年代 : num 18 18 18 18 18 18 18 18 18 18 ...
## $ 演者 : chr "見取り図" "スーパーマラドーナ" "かまいたち" "ジャルジャル" ...
## $ ネタ順 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ 立川志らく : num 85 88 88 99 86 87 89 97 93 93 ...
## $ 塙宣之 : num 85 89 92 93 89 82 90 93 98 94 ...
## $ 上沼恵美子 : num 88 89 94 88 89 84 98 86 97 98 ...
## $ 松本人志 : num 83 85 90 92 86 80 88 91 94 93 ...
## $ 博多大吉 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 春風亭小朝 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 中川礼二 : num 91 90 92 93 90 91 93 90 96 94 ...
## $ 渡辺正行 : num NA NA NA NA NA NA NA NA NA NA ...
## $ オール巨人 : num 88 87 89 93 87 84 90 87 93 92 ...
## $ 増田英彦 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 岩尾望 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 吉田敬 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 徳井義実 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 富澤たけし : num 86 89 91 90 87 86 90 89 91 92 ...
## $ 石田明 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 佐藤哲夫 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 哲夫 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 島田紳助 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 南原清隆 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 大竹まこと : num NA NA NA NA NA NA NA NA NA NA ...
## $ 宮迫博之 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 中田カウス : num NA NA NA NA NA NA NA NA NA NA ...
## $ 東国原英夫 : num NA NA NA NA NA NA NA NA NA NA ...
## $ ラサール石井: num NA NA NA NA NA NA NA NA NA NA ...
## $ 島田洋七 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 西川きよし : num NA NA NA NA NA NA NA NA NA NA ...
## $ 立川談志 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 鴻上尚史 : num NA NA NA NA NA NA NA NA NA NA ...
## $ 青島幸男 : num NA NA NA NA NA NA NA NA NA NA ...
## - attr(*, "spec")=
## .. cols(
## .. 年代 = col_double(),
## .. 演者 = col_character(),
## .. ネタ順 = col_double(),
## .. 立川志らく = col_double(),
## .. 塙宣之 = col_double(),
## .. 上沼恵美子 = col_double(),
## .. 松本人志 = col_double(),
## .. 博多大吉 = col_double(),
## .. 春風亭小朝 = col_double(),
## .. 中川礼二 = col_double(),
## .. 渡辺正行 = col_double(),
## .. オール巨人 = col_double(),
## .. 増田英彦 = col_double(),
## .. 岩尾望 = col_double(),
## .. 吉田敬 = col_double(),
## .. 徳井義実 = col_double(),
## .. 富澤たけし = col_double(),
## .. 石田明 = col_double(),
## .. 佐藤哲夫 = col_double(),
## .. 哲夫 = col_double(),
## .. 島田紳助 = col_double(),
## .. 南原清隆 = col_double(),
## .. 大竹まこと = col_double(),
## .. 宮迫博之 = col_double(),
## .. 中田カウス = col_double(),
## .. 東国原英夫 = col_double(),
## .. ラサール石井 = col_double(),
## .. 島田洋七 = col_double(),
## .. 西川きよし = col_double(),
## .. 立川談志 = col_double(),
## .. 鴻上尚史 = col_double(),
## .. 青島幸男 = col_double()
## .. )
M1 %>% dplyr::select(松本人志,富澤たけし) %>% head()
松本人志 | 富澤たけし |
---|---|
83 | 86 |
85 | 89 |
90 | 91 |
92 | 90 |
86 | 87 |
80 | 86 |
M1 %>% dplyr::filter(年代==18) %>% head()
年代 | 演者 | ネタ順 | 立川志らく | 塙宣之 | 上沼恵美子 | 松本人志 | 博多大吉 | 春風亭小朝 | 中川礼二 | 渡辺正行 | オール巨人 | 増田英彦 | 岩尾望 | 吉田敬 | 徳井義実 | 富澤たけし | 石田明 | 佐藤哲夫 | 哲夫 | 島田紳助 | 南原清隆 | 大竹まこと | 宮迫博之 | 中田カウス | 東国原英夫 | ラサール石井 | 島田洋七 | 西川きよし | 立川談志 | 鴻上尚史 | 青島幸男 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
18 | 見取り図 | 1 | 85 | 85 | 88 | 83 | NA | NA | 91 | NA | 88 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | スーパーマラドーナ | 2 | 88 | 89 | 89 | 85 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 89 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | かまいたち | 3 | 88 | 92 | 94 | 90 | NA | NA | 92 | NA | 89 | NA | NA | NA | NA | 91 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ジャルジャル | 4 | 99 | 93 | 88 | 92 | NA | NA | 93 | NA | 93 | NA | NA | NA | NA | 90 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ギャロップ | 5 | 86 | 89 | 89 | 86 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 87 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
18 | ゆにばーす | 6 | 87 | 82 | 84 | 80 | NA | NA | 91 | NA | 84 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
M1 %>% dplyr::filter(年代<10) %>% head()
年代 | 演者 | ネタ順 | 立川志らく | 塙宣之 | 上沼恵美子 | 松本人志 | 博多大吉 | 春風亭小朝 | 中川礼二 | 渡辺正行 | オール巨人 | 増田英彦 | 岩尾望 | 吉田敬 | 徳井義実 | 富澤たけし | 石田明 | 佐藤哲夫 | 哲夫 | 島田紳助 | 南原清隆 | 大竹まこと | 宮迫博之 | 中田カウス | 東国原英夫 | ラサール石井 | 島田洋七 | 西川きよし | 立川談志 | 鴻上尚史 | 青島幸男 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
9 | パンクブーブー | 8 | NA | NA | 98 | 93 | NA | NA | NA | 91 | 90 | NA | NA | NA | NA | NA | NA | NA | NA | 94 | NA | NA | NA | 97 | 88 | NA | NA | NA | NA | NA | NA |
9 | 笑い飯 | 5 | NA | NA | 98 | 95 | NA | NA | NA | 92 | 93 | NA | NA | NA | NA | NA | NA | NA | NA | 100 | NA | NA | NA | 98 | 92 | NA | NA | NA | NA | NA | NA |
9 | NON STYLE | 9 | NA | NA | 98 | 92 | NA | NA | NA | 90 | 87 | NA | NA | NA | NA | NA | NA | NA | NA | 90 | NA | NA | NA | 95 | 89 | NA | NA | NA | NA | NA | NA |
9 | ナイツ | 1 | NA | NA | 93 | 85 | NA | NA | NA | 91 | 90 | NA | NA | NA | NA | NA | NA | NA | NA | 91 | NA | NA | NA | 96 | 88 | NA | NA | NA | NA | NA | NA |
9 | ハライチ | 6 | NA | NA | 91 | 88 | NA | NA | NA | 89 | 89 | NA | NA | NA | NA | NA | NA | NA | NA | 90 | NA | NA | NA | 95 | 86 | NA | NA | NA | NA | NA | NA |
9 | 東京ダイナマイト | 3 | NA | NA | 90 | 88 | NA | NA | NA | 90 | 86 | NA | NA | NA | NA | NA | NA | NA | NA | 85 | NA | NA | NA | 90 | 85 | NA | NA | NA | NA | NA | NA |
M1 %>% dplyr::filter(年代<10) %>% dplyr::select(年代,演者,松本人志) %>% head()
年代 | 演者 | 松本人志 |
---|---|---|
9 | パンクブーブー | 93 |
9 | 笑い飯 | 95 |
9 | NON STYLE | 92 |
9 | ナイツ | 85 |
9 | ハライチ | 88 |
9 | 東京ダイナマイト | 88 |
M1 %>% mutate(松本上沼=松本人志+上沼恵美子) %>% head()
年代 | 演者 | ネタ順 | 立川志らく | 塙宣之 | 上沼恵美子 | 松本人志 | 博多大吉 | 春風亭小朝 | 中川礼二 | 渡辺正行 | オール巨人 | 増田英彦 | 岩尾望 | 吉田敬 | 徳井義実 | 富澤たけし | 石田明 | 佐藤哲夫 | 哲夫 | 島田紳助 | 南原清隆 | 大竹まこと | 宮迫博之 | 中田カウス | 東国原英夫 | ラサール石井 | 島田洋七 | 西川きよし | 立川談志 | 鴻上尚史 | 青島幸男 | 松本上沼 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
18 | 見取り図 | 1 | 85 | 85 | 88 | 83 | NA | NA | 91 | NA | 88 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 171 |
18 | スーパーマラドーナ | 2 | 88 | 89 | 89 | 85 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 89 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 174 |
18 | かまいたち | 3 | 88 | 92 | 94 | 90 | NA | NA | 92 | NA | 89 | NA | NA | NA | NA | 91 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 184 |
18 | ジャルジャル | 4 | 99 | 93 | 88 | 92 | NA | NA | 93 | NA | 93 | NA | NA | NA | NA | 90 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 180 |
18 | ギャロップ | 5 | 86 | 89 | 89 | 86 | NA | NA | 90 | NA | 87 | NA | NA | NA | NA | 87 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 175 |
18 | ゆにばーす | 6 | 87 | 82 | 84 | 80 | NA | NA | 91 | NA | 84 | NA | NA | NA | NA | 86 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | 164 |
とにかく二列にする関数。
M1 %>% tidyr::gather(key,val) %>% head()
key | val |
---|---|
年代 | 18 |
年代 | 18 |
年代 | 18 |
年代 | 18 |
年代 | 18 |
年代 | 18 |
二列にしてほしくないところはマイナス。
M1 %>% tidyr::gather(key,val,-年代,-演者,-ネタ順) %>% head()
年代 | 演者 | ネタ順 | key | val |
---|---|---|---|---|
18 | 見取り図 | 1 | 立川志らく | 85 |
18 | スーパーマラドーナ | 2 | 立川志らく | 88 |
18 | かまいたち | 3 | 立川志らく | 88 |
18 | ジャルジャル | 4 | 立川志らく | 99 |
18 | ギャロップ | 5 | 立川志らく | 86 |
18 | ゆにばーす | 6 | 立川志らく | 87 |
欠損値を除く。
M1 %>% tidyr::gather(key,val,-年代,-演者,-ネタ順) %>% na.omit %>% head()
年代 | 演者 | ネタ順 | key | val |
---|---|---|---|---|
18 | 見取り図 | 1 | 立川志らく | 85 |
18 | スーパーマラドーナ | 2 | 立川志らく | 88 |
18 | かまいたち | 3 | 立川志らく | 88 |
18 | ジャルジャル | 4 | 立川志らく | 99 |
18 | ギャロップ | 5 | 立川志らく | 86 |
18 | ゆにばーす | 6 | 立川志らく | 87 |
M1 %>% tidyr::gather(key,val,-年代,-演者,-ネタ順) %>%
group_by(key) %>% head()
年代 | 演者 | ネタ順 | key | val |
---|---|---|---|---|
18 | 見取り図 | 1 | 立川志らく | 85 |
18 | スーパーマラドーナ | 2 | 立川志らく | 88 |
18 | かまいたち | 3 | 立川志らく | 88 |
18 | ジャルジャル | 4 | 立川志らく | 99 |
18 | ギャロップ | 5 | 立川志らく | 86 |
18 | ゆにばーす | 6 | 立川志らく | 87 |
M1 %>% tidyr::gather(key,val,-年代,-演者,-ネタ順) %>% na.omit %>%
group_by(key) %>% summarise(mean(val)) %>% head()
key | mean(val) |
---|---|
オール巨人 | 88.55357 |
ラサール石井 | 86.83636 |
岩尾望 | 90.66667 |
吉田敬 | 87.55556 |
宮迫博之 | 92.00000 |
鴻上尚史 | 81.80000 |
「キャンバスに重ね描きする」という考え方をベースにした,グラフィックスの文法を学ぼう。
g <- ggplot()
print(g)
iris %>% head()
Sepal.Length | Sepal.Width | Petal.Length | Petal.Width | Species |
---|---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
4.7 | 3.2 | 1.3 | 0.2 | setosa |
4.6 | 3.1 | 1.5 | 0.2 | setosa |
5.0 | 3.6 | 1.4 | 0.2 | setosa |
5.4 | 3.9 | 1.7 | 0.4 | setosa |
iris %>% ggplot() + geom_point(data = iris,
mapping = aes(x = Sepal.Length, y = Sepal.Width))
#### 書き方の例3
こちらはキャンパスをirisデータ,x軸をSepal.Length,y軸をSepal.Widthに固定しているので,縦・横軸が異なる図を重ねることができない。
iris %>% ggplot( aes(x = Sepal.Length, y = Sepal.Width)) + geom_point()
あまり使うシーンはないかもしれないが,geom_
の中で軸を指定しておくと,異なる軸データをプロットすることもできる。
iris %>% ggplot() + geom_point( aes(x = Sepal.Length, y = Sepal.Width)) +
geom_point(aes(x = Petal.Length, y = Petal.Width,color="red"))
色を分ける変数を指定する。
iris %>% ggplot() + geom_point(aes(x = Sepal.Length, y = Sepal.Width, color=Species))
連続値だとグラデーションになる。
iris %>% ggplot() + geom_point(aes(x = Sepal.Length, y = Sepal.Width, color=Sepal.Length))
aesで表現するのは変数
である。つまり,値に応じて変わる場合はaesで指定する。そうでない場合は,aesの外で指定する。
iris %>% ggplot(aes(x = Sepal.Length, y = Sepal.Width)) +
geom_point(colour = "blue", size = 3, shape = 5)
データ全体の分布を見るためにはヒストグラムを使う。y軸の指定はいらない。
iris %>% ggplot(aes(x = Sepal.Width)) +geom_histogram()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
binwidthで幅を決める。
iris %>% ggplot(aes(x = Sepal.Width)) +geom_histogram(binwidth=1)
横軸がfactor型だと,群ごとのデータになる。
iris %>% ggplot(aes(x = Species, y = Sepal.Width)) + geom_point()
少し装飾。
iris %>% ggplot(aes(x = Species, y = Sepal.Width)) +
geom_point(aes(color=Species,alpha=0.3,size=3))
iris %>% ggplot(aes(x = Species, y = Sepal.Width,fill=Species)) + geom_boxplot()
iris %>% ggplot(aes(x = Species, y = Sepal.Width,fill=Species)) + geom_violin()
iris %>% ggplot(aes(x = Species, y = Sepal.Width,fill=Species)) +
geom_bar(stat = "summary", fun.y = mean)
別解
iris %>% ggplot(aes(x = Species, y = Sepal.Width,fill=Species)) +
stat_summary(geom="bar",fun.y=mean)
グラフを分割するときはファセットを使う。
iris %>% ggplot(aes(x = Sepal.Width,y=Petal.Length)) +geom_point()+
facet_wrap(~Species)
実験などでありがちな,平均値に標準偏差のバーをつけて表示する方法などがこちら。
iris %>%
# データを縦長にする
tidyr::gather(key,val,-Species) %>% print %>%
# グルーピングしておく
group_by(Species,key) %>%
# 平均値などの統計量を計算する
summarise(M=mean(val),U95=quantile(val,probs=0.975),L95=quantile(val,probs=0.025)) %>%
print() %>%
# 変数を限定する
dplyr::filter(key=='Sepal.Length') %>%
# キャンパスの準備
ggplot(aes(x=Species,y=M,fill=Species)) +
# 棒グラフに点をつけて
geom_bar(stat='identity') + geom_point(stat='identity') +
# エラーバーを描く
geom_errorbar(stat='identity',aes(ymin=L95,ymax=U95,width=0.2))
## Species key val
## 1 setosa Sepal.Length 5.1
## 2 setosa Sepal.Length 4.9
## 3 setosa Sepal.Length 4.7
## 4 setosa Sepal.Length 4.6
## 5 setosa Sepal.Length 5.0
## 6 setosa Sepal.Length 5.4
## 7 setosa Sepal.Length 4.6
## 8 setosa Sepal.Length 5.0
## 9 setosa Sepal.Length 4.4
## 10 setosa Sepal.Length 4.9
## 11 setosa Sepal.Length 5.4
## 12 setosa Sepal.Length 4.8
## 13 setosa Sepal.Length 4.8
## 14 setosa Sepal.Length 4.3
## 15 setosa Sepal.Length 5.8
## 16 setosa Sepal.Length 5.7
## 17 setosa Sepal.Length 5.4
## 18 setosa Sepal.Length 5.1
## 19 setosa Sepal.Length 5.7
## 20 setosa Sepal.Length 5.1
## 21 setosa Sepal.Length 5.4
## 22 setosa Sepal.Length 5.1
## 23 setosa Sepal.Length 4.6
## 24 setosa Sepal.Length 5.1
## 25 setosa Sepal.Length 4.8
## 26 setosa Sepal.Length 5.0
## 27 setosa Sepal.Length 5.0
## 28 setosa Sepal.Length 5.2
## 29 setosa Sepal.Length 5.2
## 30 setosa Sepal.Length 4.7
## 31 setosa Sepal.Length 4.8
## 32 setosa Sepal.Length 5.4
## 33 setosa Sepal.Length 5.2
## 34 setosa Sepal.Length 5.5
## 35 setosa Sepal.Length 4.9
## 36 setosa Sepal.Length 5.0
## 37 setosa Sepal.Length 5.5
## 38 setosa Sepal.Length 4.9
## 39 setosa Sepal.Length 4.4
## 40 setosa Sepal.Length 5.1
## 41 setosa Sepal.Length 5.0
## 42 setosa Sepal.Length 4.5
## 43 setosa Sepal.Length 4.4
## 44 setosa Sepal.Length 5.0
## 45 setosa Sepal.Length 5.1
## 46 setosa Sepal.Length 4.8
## 47 setosa Sepal.Length 5.1
## 48 setosa Sepal.Length 4.6
## 49 setosa Sepal.Length 5.3
## 50 setosa Sepal.Length 5.0
## 51 versicolor Sepal.Length 7.0
## 52 versicolor Sepal.Length 6.4
## 53 versicolor Sepal.Length 6.9
## 54 versicolor Sepal.Length 5.5
## 55 versicolor Sepal.Length 6.5
## 56 versicolor Sepal.Length 5.7
## 57 versicolor Sepal.Length 6.3
## 58 versicolor Sepal.Length 4.9
## 59 versicolor Sepal.Length 6.6
## 60 versicolor Sepal.Length 5.2
## 61 versicolor Sepal.Length 5.0
## 62 versicolor Sepal.Length 5.9
## 63 versicolor Sepal.Length 6.0
## 64 versicolor Sepal.Length 6.1
## 65 versicolor Sepal.Length 5.6
## 66 versicolor Sepal.Length 6.7
## 67 versicolor Sepal.Length 5.6
## 68 versicolor Sepal.Length 5.8
## 69 versicolor Sepal.Length 6.2
## 70 versicolor Sepal.Length 5.6
## 71 versicolor Sepal.Length 5.9
## 72 versicolor Sepal.Length 6.1
## 73 versicolor Sepal.Length 6.3
## 74 versicolor Sepal.Length 6.1
## 75 versicolor Sepal.Length 6.4
## 76 versicolor Sepal.Length 6.6
## 77 versicolor Sepal.Length 6.8
## 78 versicolor Sepal.Length 6.7
## 79 versicolor Sepal.Length 6.0
## 80 versicolor Sepal.Length 5.7
## 81 versicolor Sepal.Length 5.5
## 82 versicolor Sepal.Length 5.5
## 83 versicolor Sepal.Length 5.8
## 84 versicolor Sepal.Length 6.0
## 85 versicolor Sepal.Length 5.4
## 86 versicolor Sepal.Length 6.0
## 87 versicolor Sepal.Length 6.7
## 88 versicolor Sepal.Length 6.3
## 89 versicolor Sepal.Length 5.6
## 90 versicolor Sepal.Length 5.5
## 91 versicolor Sepal.Length 5.5
## 92 versicolor Sepal.Length 6.1
## 93 versicolor Sepal.Length 5.8
## 94 versicolor Sepal.Length 5.0
## 95 versicolor Sepal.Length 5.6
## 96 versicolor Sepal.Length 5.7
## 97 versicolor Sepal.Length 5.7
## 98 versicolor Sepal.Length 6.2
## 99 versicolor Sepal.Length 5.1
## 100 versicolor Sepal.Length 5.7
## 101 virginica Sepal.Length 6.3
## 102 virginica Sepal.Length 5.8
## 103 virginica Sepal.Length 7.1
## 104 virginica Sepal.Length 6.3
## 105 virginica Sepal.Length 6.5
## 106 virginica Sepal.Length 7.6
## 107 virginica Sepal.Length 4.9
## 108 virginica Sepal.Length 7.3
## 109 virginica Sepal.Length 6.7
## 110 virginica Sepal.Length 7.2
## 111 virginica Sepal.Length 6.5
## 112 virginica Sepal.Length 6.4
## 113 virginica Sepal.Length 6.8
## 114 virginica Sepal.Length 5.7
## 115 virginica Sepal.Length 5.8
## 116 virginica Sepal.Length 6.4
## 117 virginica Sepal.Length 6.5
## 118 virginica Sepal.Length 7.7
## 119 virginica Sepal.Length 7.7
## 120 virginica Sepal.Length 6.0
## 121 virginica Sepal.Length 6.9
## 122 virginica Sepal.Length 5.6
## 123 virginica Sepal.Length 7.7
## 124 virginica Sepal.Length 6.3
## 125 virginica Sepal.Length 6.7
## 126 virginica Sepal.Length 7.2
## 127 virginica Sepal.Length 6.2
## 128 virginica Sepal.Length 6.1
## 129 virginica Sepal.Length 6.4
## 130 virginica Sepal.Length 7.2
## 131 virginica Sepal.Length 7.4
## 132 virginica Sepal.Length 7.9
## 133 virginica Sepal.Length 6.4
## 134 virginica Sepal.Length 6.3
## 135 virginica Sepal.Length 6.1
## 136 virginica Sepal.Length 7.7
## 137 virginica Sepal.Length 6.3
## 138 virginica Sepal.Length 6.4
## 139 virginica Sepal.Length 6.0
## 140 virginica Sepal.Length 6.9
## 141 virginica Sepal.Length 6.7
## 142 virginica Sepal.Length 6.9
## 143 virginica Sepal.Length 5.8
## 144 virginica Sepal.Length 6.8
## 145 virginica Sepal.Length 6.7
## 146 virginica Sepal.Length 6.7
## 147 virginica Sepal.Length 6.3
## 148 virginica Sepal.Length 6.5
## 149 virginica Sepal.Length 6.2
## 150 virginica Sepal.Length 5.9
## 151 setosa Sepal.Width 3.5
## 152 setosa Sepal.Width 3.0
## 153 setosa Sepal.Width 3.2
## 154 setosa Sepal.Width 3.1
## 155 setosa Sepal.Width 3.6
## 156 setosa Sepal.Width 3.9
## 157 setosa Sepal.Width 3.4
## 158 setosa Sepal.Width 3.4
## 159 setosa Sepal.Width 2.9
## 160 setosa Sepal.Width 3.1
## 161 setosa Sepal.Width 3.7
## 162 setosa Sepal.Width 3.4
## 163 setosa Sepal.Width 3.0
## 164 setosa Sepal.Width 3.0
## 165 setosa Sepal.Width 4.0
## 166 setosa Sepal.Width 4.4
## 167 setosa Sepal.Width 3.9
## 168 setosa Sepal.Width 3.5
## 169 setosa Sepal.Width 3.8
## 170 setosa Sepal.Width 3.8
## 171 setosa Sepal.Width 3.4
## 172 setosa Sepal.Width 3.7
## 173 setosa Sepal.Width 3.6
## 174 setosa Sepal.Width 3.3
## 175 setosa Sepal.Width 3.4
## 176 setosa Sepal.Width 3.0
## 177 setosa Sepal.Width 3.4
## 178 setosa Sepal.Width 3.5
## 179 setosa Sepal.Width 3.4
## 180 setosa Sepal.Width 3.2
## 181 setosa Sepal.Width 3.1
## 182 setosa Sepal.Width 3.4
## 183 setosa Sepal.Width 4.1
## 184 setosa Sepal.Width 4.2
## 185 setosa Sepal.Width 3.1
## 186 setosa Sepal.Width 3.2
## 187 setosa Sepal.Width 3.5
## 188 setosa Sepal.Width 3.6
## 189 setosa Sepal.Width 3.0
## 190 setosa Sepal.Width 3.4
## 191 setosa Sepal.Width 3.5
## 192 setosa Sepal.Width 2.3
## 193 setosa Sepal.Width 3.2
## 194 setosa Sepal.Width 3.5
## 195 setosa Sepal.Width 3.8
## 196 setosa Sepal.Width 3.0
## 197 setosa Sepal.Width 3.8
## 198 setosa Sepal.Width 3.2
## 199 setosa Sepal.Width 3.7
## 200 setosa Sepal.Width 3.3
## 201 versicolor Sepal.Width 3.2
## 202 versicolor Sepal.Width 3.2
## 203 versicolor Sepal.Width 3.1
## 204 versicolor Sepal.Width 2.3
## 205 versicolor Sepal.Width 2.8
## 206 versicolor Sepal.Width 2.8
## 207 versicolor Sepal.Width 3.3
## 208 versicolor Sepal.Width 2.4
## 209 versicolor Sepal.Width 2.9
## 210 versicolor Sepal.Width 2.7
## 211 versicolor Sepal.Width 2.0
## 212 versicolor Sepal.Width 3.0
## 213 versicolor Sepal.Width 2.2
## 214 versicolor Sepal.Width 2.9
## 215 versicolor Sepal.Width 2.9
## 216 versicolor Sepal.Width 3.1
## 217 versicolor Sepal.Width 3.0
## 218 versicolor Sepal.Width 2.7
## 219 versicolor Sepal.Width 2.2
## 220 versicolor Sepal.Width 2.5
## 221 versicolor Sepal.Width 3.2
## 222 versicolor Sepal.Width 2.8
## 223 versicolor Sepal.Width 2.5
## 224 versicolor Sepal.Width 2.8
## 225 versicolor Sepal.Width 2.9
## 226 versicolor Sepal.Width 3.0
## 227 versicolor Sepal.Width 2.8
## 228 versicolor Sepal.Width 3.0
## 229 versicolor Sepal.Width 2.9
## 230 versicolor Sepal.Width 2.6
## 231 versicolor Sepal.Width 2.4
## 232 versicolor Sepal.Width 2.4
## 233 versicolor Sepal.Width 2.7
## 234 versicolor Sepal.Width 2.7
## 235 versicolor Sepal.Width 3.0
## 236 versicolor Sepal.Width 3.4
## 237 versicolor Sepal.Width 3.1
## 238 versicolor Sepal.Width 2.3
## 239 versicolor Sepal.Width 3.0
## 240 versicolor Sepal.Width 2.5
## 241 versicolor Sepal.Width 2.6
## 242 versicolor Sepal.Width 3.0
## 243 versicolor Sepal.Width 2.6
## 244 versicolor Sepal.Width 2.3
## 245 versicolor Sepal.Width 2.7
## 246 versicolor Sepal.Width 3.0
## 247 versicolor Sepal.Width 2.9
## 248 versicolor Sepal.Width 2.9
## 249 versicolor Sepal.Width 2.5
## 250 versicolor Sepal.Width 2.8
## 251 virginica Sepal.Width 3.3
## 252 virginica Sepal.Width 2.7
## 253 virginica Sepal.Width 3.0
## 254 virginica Sepal.Width 2.9
## 255 virginica Sepal.Width 3.0
## 256 virginica Sepal.Width 3.0
## 257 virginica Sepal.Width 2.5
## 258 virginica Sepal.Width 2.9
## 259 virginica Sepal.Width 2.5
## 260 virginica Sepal.Width 3.6
## 261 virginica Sepal.Width 3.2
## 262 virginica Sepal.Width 2.7
## 263 virginica Sepal.Width 3.0
## 264 virginica Sepal.Width 2.5
## 265 virginica Sepal.Width 2.8
## 266 virginica Sepal.Width 3.2
## 267 virginica Sepal.Width 3.0
## 268 virginica Sepal.Width 3.8
## 269 virginica Sepal.Width 2.6
## 270 virginica Sepal.Width 2.2
## 271 virginica Sepal.Width 3.2
## 272 virginica Sepal.Width 2.8
## 273 virginica Sepal.Width 2.8
## 274 virginica Sepal.Width 2.7
## 275 virginica Sepal.Width 3.3
## 276 virginica Sepal.Width 3.2
## 277 virginica Sepal.Width 2.8
## 278 virginica Sepal.Width 3.0
## 279 virginica Sepal.Width 2.8
## 280 virginica Sepal.Width 3.0
## 281 virginica Sepal.Width 2.8
## 282 virginica Sepal.Width 3.8
## 283 virginica Sepal.Width 2.8
## 284 virginica Sepal.Width 2.8
## 285 virginica Sepal.Width 2.6
## 286 virginica Sepal.Width 3.0
## 287 virginica Sepal.Width 3.4
## 288 virginica Sepal.Width 3.1
## 289 virginica Sepal.Width 3.0
## 290 virginica Sepal.Width 3.1
## 291 virginica Sepal.Width 3.1
## 292 virginica Sepal.Width 3.1
## 293 virginica Sepal.Width 2.7
## 294 virginica Sepal.Width 3.2
## 295 virginica Sepal.Width 3.3
## 296 virginica Sepal.Width 3.0
## 297 virginica Sepal.Width 2.5
## 298 virginica Sepal.Width 3.0
## 299 virginica Sepal.Width 3.4
## 300 virginica Sepal.Width 3.0
## 301 setosa Petal.Length 1.4
## 302 setosa Petal.Length 1.4
## 303 setosa Petal.Length 1.3
## 304 setosa Petal.Length 1.5
## 305 setosa Petal.Length 1.4
## 306 setosa Petal.Length 1.7
## 307 setosa Petal.Length 1.4
## 308 setosa Petal.Length 1.5
## 309 setosa Petal.Length 1.4
## 310 setosa Petal.Length 1.5
## 311 setosa Petal.Length 1.5
## 312 setosa Petal.Length 1.6
## 313 setosa Petal.Length 1.4
## 314 setosa Petal.Length 1.1
## 315 setosa Petal.Length 1.2
## 316 setosa Petal.Length 1.5
## 317 setosa Petal.Length 1.3
## 318 setosa Petal.Length 1.4
## 319 setosa Petal.Length 1.7
## 320 setosa Petal.Length 1.5
## 321 setosa Petal.Length 1.7
## 322 setosa Petal.Length 1.5
## 323 setosa Petal.Length 1.0
## 324 setosa Petal.Length 1.7
## 325 setosa Petal.Length 1.9
## 326 setosa Petal.Length 1.6
## 327 setosa Petal.Length 1.6
## 328 setosa Petal.Length 1.5
## 329 setosa Petal.Length 1.4
## 330 setosa Petal.Length 1.6
## 331 setosa Petal.Length 1.6
## 332 setosa Petal.Length 1.5
## 333 setosa Petal.Length 1.5
## 334 setosa Petal.Length 1.4
## 335 setosa Petal.Length 1.5
## 336 setosa Petal.Length 1.2
## 337 setosa Petal.Length 1.3
## 338 setosa Petal.Length 1.4
## 339 setosa Petal.Length 1.3
## 340 setosa Petal.Length 1.5
## 341 setosa Petal.Length 1.3
## 342 setosa Petal.Length 1.3
## 343 setosa Petal.Length 1.3
## 344 setosa Petal.Length 1.6
## 345 setosa Petal.Length 1.9
## 346 setosa Petal.Length 1.4
## 347 setosa Petal.Length 1.6
## 348 setosa Petal.Length 1.4
## 349 setosa Petal.Length 1.5
## 350 setosa Petal.Length 1.4
## 351 versicolor Petal.Length 4.7
## 352 versicolor Petal.Length 4.5
## 353 versicolor Petal.Length 4.9
## 354 versicolor Petal.Length 4.0
## 355 versicolor Petal.Length 4.6
## 356 versicolor Petal.Length 4.5
## 357 versicolor Petal.Length 4.7
## 358 versicolor Petal.Length 3.3
## 359 versicolor Petal.Length 4.6
## 360 versicolor Petal.Length 3.9
## 361 versicolor Petal.Length 3.5
## 362 versicolor Petal.Length 4.2
## 363 versicolor Petal.Length 4.0
## 364 versicolor Petal.Length 4.7
## 365 versicolor Petal.Length 3.6
## 366 versicolor Petal.Length 4.4
## 367 versicolor Petal.Length 4.5
## 368 versicolor Petal.Length 4.1
## 369 versicolor Petal.Length 4.5
## 370 versicolor Petal.Length 3.9
## 371 versicolor Petal.Length 4.8
## 372 versicolor Petal.Length 4.0
## 373 versicolor Petal.Length 4.9
## 374 versicolor Petal.Length 4.7
## 375 versicolor Petal.Length 4.3
## 376 versicolor Petal.Length 4.4
## 377 versicolor Petal.Length 4.8
## 378 versicolor Petal.Length 5.0
## 379 versicolor Petal.Length 4.5
## 380 versicolor Petal.Length 3.5
## 381 versicolor Petal.Length 3.8
## 382 versicolor Petal.Length 3.7
## 383 versicolor Petal.Length 3.9
## 384 versicolor Petal.Length 5.1
## 385 versicolor Petal.Length 4.5
## 386 versicolor Petal.Length 4.5
## 387 versicolor Petal.Length 4.7
## 388 versicolor Petal.Length 4.4
## 389 versicolor Petal.Length 4.1
## 390 versicolor Petal.Length 4.0
## 391 versicolor Petal.Length 4.4
## 392 versicolor Petal.Length 4.6
## 393 versicolor Petal.Length 4.0
## 394 versicolor Petal.Length 3.3
## 395 versicolor Petal.Length 4.2
## 396 versicolor Petal.Length 4.2
## 397 versicolor Petal.Length 4.2
## 398 versicolor Petal.Length 4.3
## 399 versicolor Petal.Length 3.0
## 400 versicolor Petal.Length 4.1
## 401 virginica Petal.Length 6.0
## 402 virginica Petal.Length 5.1
## 403 virginica Petal.Length 5.9
## 404 virginica Petal.Length 5.6
## 405 virginica Petal.Length 5.8
## 406 virginica Petal.Length 6.6
## 407 virginica Petal.Length 4.5
## 408 virginica Petal.Length 6.3
## 409 virginica Petal.Length 5.8
## 410 virginica Petal.Length 6.1
## 411 virginica Petal.Length 5.1
## 412 virginica Petal.Length 5.3
## 413 virginica Petal.Length 5.5
## 414 virginica Petal.Length 5.0
## 415 virginica Petal.Length 5.1
## 416 virginica Petal.Length 5.3
## 417 virginica Petal.Length 5.5
## 418 virginica Petal.Length 6.7
## 419 virginica Petal.Length 6.9
## 420 virginica Petal.Length 5.0
## 421 virginica Petal.Length 5.7
## 422 virginica Petal.Length 4.9
## 423 virginica Petal.Length 6.7
## 424 virginica Petal.Length 4.9
## 425 virginica Petal.Length 5.7
## 426 virginica Petal.Length 6.0
## 427 virginica Petal.Length 4.8
## 428 virginica Petal.Length 4.9
## 429 virginica Petal.Length 5.6
## 430 virginica Petal.Length 5.8
## 431 virginica Petal.Length 6.1
## 432 virginica Petal.Length 6.4
## 433 virginica Petal.Length 5.6
## 434 virginica Petal.Length 5.1
## 435 virginica Petal.Length 5.6
## 436 virginica Petal.Length 6.1
## 437 virginica Petal.Length 5.6
## 438 virginica Petal.Length 5.5
## 439 virginica Petal.Length 4.8
## 440 virginica Petal.Length 5.4
## 441 virginica Petal.Length 5.6
## 442 virginica Petal.Length 5.1
## 443 virginica Petal.Length 5.1
## 444 virginica Petal.Length 5.9
## 445 virginica Petal.Length 5.7
## 446 virginica Petal.Length 5.2
## 447 virginica Petal.Length 5.0
## 448 virginica Petal.Length 5.2
## 449 virginica Petal.Length 5.4
## 450 virginica Petal.Length 5.1
## 451 setosa Petal.Width 0.2
## 452 setosa Petal.Width 0.2
## 453 setosa Petal.Width 0.2
## 454 setosa Petal.Width 0.2
## 455 setosa Petal.Width 0.2
## 456 setosa Petal.Width 0.4
## 457 setosa Petal.Width 0.3
## 458 setosa Petal.Width 0.2
## 459 setosa Petal.Width 0.2
## 460 setosa Petal.Width 0.1
## 461 setosa Petal.Width 0.2
## 462 setosa Petal.Width 0.2
## 463 setosa Petal.Width 0.1
## 464 setosa Petal.Width 0.1
## 465 setosa Petal.Width 0.2
## 466 setosa Petal.Width 0.4
## 467 setosa Petal.Width 0.4
## 468 setosa Petal.Width 0.3
## 469 setosa Petal.Width 0.3
## 470 setosa Petal.Width 0.3
## 471 setosa Petal.Width 0.2
## 472 setosa Petal.Width 0.4
## 473 setosa Petal.Width 0.2
## 474 setosa Petal.Width 0.5
## 475 setosa Petal.Width 0.2
## 476 setosa Petal.Width 0.2
## 477 setosa Petal.Width 0.4
## 478 setosa Petal.Width 0.2
## 479 setosa Petal.Width 0.2
## 480 setosa Petal.Width 0.2
## 481 setosa Petal.Width 0.2
## 482 setosa Petal.Width 0.4
## 483 setosa Petal.Width 0.1
## 484 setosa Petal.Width 0.2
## 485 setosa Petal.Width 0.2
## 486 setosa Petal.Width 0.2
## 487 setosa Petal.Width 0.2
## 488 setosa Petal.Width 0.1
## 489 setosa Petal.Width 0.2
## 490 setosa Petal.Width 0.2
## 491 setosa Petal.Width 0.3
## 492 setosa Petal.Width 0.3
## 493 setosa Petal.Width 0.2
## 494 setosa Petal.Width 0.6
## 495 setosa Petal.Width 0.4
## 496 setosa Petal.Width 0.3
## 497 setosa Petal.Width 0.2
## 498 setosa Petal.Width 0.2
## 499 setosa Petal.Width 0.2
## 500 setosa Petal.Width 0.2
## 501 versicolor Petal.Width 1.4
## 502 versicolor Petal.Width 1.5
## 503 versicolor Petal.Width 1.5
## 504 versicolor Petal.Width 1.3
## 505 versicolor Petal.Width 1.5
## 506 versicolor Petal.Width 1.3
## 507 versicolor Petal.Width 1.6
## 508 versicolor Petal.Width 1.0
## 509 versicolor Petal.Width 1.3
## 510 versicolor Petal.Width 1.4
## 511 versicolor Petal.Width 1.0
## 512 versicolor Petal.Width 1.5
## 513 versicolor Petal.Width 1.0
## 514 versicolor Petal.Width 1.4
## 515 versicolor Petal.Width 1.3
## 516 versicolor Petal.Width 1.4
## 517 versicolor Petal.Width 1.5
## 518 versicolor Petal.Width 1.0
## 519 versicolor Petal.Width 1.5
## 520 versicolor Petal.Width 1.1
## 521 versicolor Petal.Width 1.8
## 522 versicolor Petal.Width 1.3
## 523 versicolor Petal.Width 1.5
## 524 versicolor Petal.Width 1.2
## 525 versicolor Petal.Width 1.3
## 526 versicolor Petal.Width 1.4
## 527 versicolor Petal.Width 1.4
## 528 versicolor Petal.Width 1.7
## 529 versicolor Petal.Width 1.5
## 530 versicolor Petal.Width 1.0
## 531 versicolor Petal.Width 1.1
## 532 versicolor Petal.Width 1.0
## 533 versicolor Petal.Width 1.2
## 534 versicolor Petal.Width 1.6
## 535 versicolor Petal.Width 1.5
## 536 versicolor Petal.Width 1.6
## 537 versicolor Petal.Width 1.5
## 538 versicolor Petal.Width 1.3
## 539 versicolor Petal.Width 1.3
## 540 versicolor Petal.Width 1.3
## 541 versicolor Petal.Width 1.2
## 542 versicolor Petal.Width 1.4
## 543 versicolor Petal.Width 1.2
## 544 versicolor Petal.Width 1.0
## 545 versicolor Petal.Width 1.3
## 546 versicolor Petal.Width 1.2
## 547 versicolor Petal.Width 1.3
## 548 versicolor Petal.Width 1.3
## 549 versicolor Petal.Width 1.1
## 550 versicolor Petal.Width 1.3
## 551 virginica Petal.Width 2.5
## 552 virginica Petal.Width 1.9
## 553 virginica Petal.Width 2.1
## 554 virginica Petal.Width 1.8
## 555 virginica Petal.Width 2.2
## 556 virginica Petal.Width 2.1
## 557 virginica Petal.Width 1.7
## 558 virginica Petal.Width 1.8
## 559 virginica Petal.Width 1.8
## 560 virginica Petal.Width 2.5
## 561 virginica Petal.Width 2.0
## 562 virginica Petal.Width 1.9
## 563 virginica Petal.Width 2.1
## 564 virginica Petal.Width 2.0
## 565 virginica Petal.Width 2.4
## 566 virginica Petal.Width 2.3
## 567 virginica Petal.Width 1.8
## 568 virginica Petal.Width 2.2
## 569 virginica Petal.Width 2.3
## 570 virginica Petal.Width 1.5
## 571 virginica Petal.Width 2.3
## 572 virginica Petal.Width 2.0
## 573 virginica Petal.Width 2.0
## 574 virginica Petal.Width 1.8
## 575 virginica Petal.Width 2.1
## 576 virginica Petal.Width 1.8
## 577 virginica Petal.Width 1.8
## 578 virginica Petal.Width 1.8
## 579 virginica Petal.Width 2.1
## 580 virginica Petal.Width 1.6
## 581 virginica Petal.Width 1.9
## 582 virginica Petal.Width 2.0
## 583 virginica Petal.Width 2.2
## 584 virginica Petal.Width 1.5
## 585 virginica Petal.Width 1.4
## 586 virginica Petal.Width 2.3
## 587 virginica Petal.Width 2.4
## 588 virginica Petal.Width 1.8
## 589 virginica Petal.Width 1.8
## 590 virginica Petal.Width 2.1
## 591 virginica Petal.Width 2.4
## 592 virginica Petal.Width 2.3
## 593 virginica Petal.Width 1.9
## 594 virginica Petal.Width 2.3
## 595 virginica Petal.Width 2.5
## 596 virginica Petal.Width 2.3
## 597 virginica Petal.Width 1.9
## 598 virginica Petal.Width 2.0
## 599 virginica Petal.Width 2.3
## 600 virginica Petal.Width 1.8
## # A tibble: 12 x 5
## # Groups: Species [?]
## Species key M U95 L95
## <fct> <chr> <dbl> <dbl> <dbl>
## 1 setosa Petal.Length 1.46 1.85 1.12
## 2 setosa Petal.Width 0.246 0.477 0.1
## 3 setosa Sepal.Length 5.01 5.7 4.4
## 4 setosa Sepal.Width 3.43 4.18 2.92
## 5 versicolor Petal.Length 4.26 4.98 3.3
## 6 versicolor Petal.Width 1.33 1.68 1
## 7 versicolor Sepal.Length 5.94 6.88 5
## 8 versicolor Sepal.Width 2.77 3.28 2.2
## 9 virginica Petal.Length 5.55 6.7 4.8
## 10 virginica Petal.Width 2.03 2.5 1.5
## 11 virginica Sepal.Length 6.59 7.7 5.62
## 12 virginica Sepal.Width 2.97 3.76 2.5
ヨーロッパ都市間の距離データ(Rのデフォルト)を使います
eurodist
## Athens Barcelona Brussels Calais Cherbourg Cologne
## Barcelona 3313
## Brussels 2963 1318
## Calais 3175 1326 204
## Cherbourg 3339 1294 583 460
## Cologne 2762 1498 206 409 785
## Copenhagen 3276 2218 966 1136 1545 760
## Geneva 2610 803 677 747 853 1662
## Gibraltar 4485 1172 2256 2224 2047 2436
## Hamburg 2977 2018 597 714 1115 460
## Hook of Holland 3030 1490 172 330 731 269
## Lisbon 4532 1305 2084 2052 1827 2290
## Lyons 2753 645 690 739 789 714
## Madrid 3949 636 1558 1550 1347 1764
## Marseilles 2865 521 1011 1059 1101 1035
## Milan 2282 1014 925 1077 1209 911
## Munich 2179 1365 747 977 1160 583
## Paris 3000 1033 285 280 340 465
## Rome 817 1460 1511 1662 1794 1497
## Stockholm 3927 2868 1616 1786 2196 1403
## Vienna 1991 1802 1175 1381 1588 937
## Copenhagen Geneva Gibraltar Hamburg Hook of Holland Lisbon
## Barcelona
## Brussels
## Calais
## Cherbourg
## Cologne
## Copenhagen
## Geneva 1418
## Gibraltar 3196 1975
## Hamburg 460 1118 2897
## Hook of Holland 269 895 2428 550
## Lisbon 2971 1936 676 2671 2280
## Lyons 1458 158 1817 1159 863 1178
## Madrid 2498 1439 698 2198 1730 668
## Marseilles 1778 425 1693 1479 1183 1762
## Milan 1537 328 2185 1238 1098 2250
## Munich 1104 591 2565 805 851 2507
## Paris 1176 513 1971 877 457 1799
## Rome 2050 995 2631 1751 1683 2700
## Stockholm 650 2068 3886 949 1500 3231
## Vienna 1455 1019 2974 1155 1205 2937
## Lyons Madrid Marseilles Milan Munich Paris Rome Stockholm
## Barcelona
## Brussels
## Calais
## Cherbourg
## Cologne
## Copenhagen
## Geneva
## Gibraltar
## Hamburg
## Hook of Holland
## Lisbon
## Lyons
## Madrid 1281
## Marseilles 320 1157
## Milan 328 1724 618
## Munich 724 2010 1109 331
## Paris 471 1273 792 856 821
## Rome 1048 2097 1011 586 946 1476
## Stockholm 2108 3188 2428 2187 1754 1827 2707
## Vienna 1157 2409 1363 898 428 1249 1209 2105
メトリックなMDSで分析
#描画に使うパッケージの読み込み
library(ggrepel)
# MDSの関数
result.MDS1 <- cmdscale(eurodist,k=3)
# 結果と描画
result.MDS1 %>% as.data.frame %>%
dplyr::mutate(label=rownames(.)) %>%
ggplot(aes(x=V1,y=V2,label=label))+geom_point()+geom_text_repel()+
xlim(-2500,2500)+ylim(-2500,2500)+xlab("dim 1")+ylab("dim2")
南北反転?
# y軸反転
result.MDS1 %>% as.data.frame %>%
dplyr::mutate(label=rownames(.)) %>%
ggplot(aes(x=V1,y=V2,label=label))+geom_point()+geom_text_repel()+
xlim(-2500,2500)+ylim(2500,-2500)+xlab("dim 1")+ylab("dim2")
サンプルデータ(あやめ)
iris[,-5] %>% head()
Sepal.Length | Sepal.Width | Petal.Length | Petal.Width |
---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 |
4.9 | 3.0 | 1.4 | 0.2 |
4.7 | 3.2 | 1.3 | 0.2 |
4.6 | 3.1 | 1.5 | 0.2 |
5.0 | 3.6 | 1.4 | 0.2 |
5.4 | 3.9 | 1.7 | 0.4 |
# ユークリッド距離
iris[,-5] %>% head() %>% dist()
## 1 2 3 4 5
## 2 0.5385165
## 3 0.5099020 0.3000000
## 4 0.6480741 0.3316625 0.2449490
## 5 0.1414214 0.6082763 0.5099020 0.6480741
## 6 0.6164414 1.0908712 1.0862780 1.1661904 0.6164414
# マンハッタン距離
iris[,-5] %>% head() %>% dist(method="manhattan")
## 1 2 3 4 5
## 2 0.7
## 3 0.8 0.5
## 4 1.0 0.5 0.4
## 5 0.2 0.7 0.8 1.0
## 6 1.2 1.9 2.0 2.0 1.2
# ミンコフスキー距離
iris[,-5] %>% head() %>% dist(method="minkowski",p=3)
## 1 2 3 4 5
## 2 0.5104469
## 3 0.4514357 0.2571282
## 4 0.5748897 0.3072317 0.2154435
## 5 0.1259921 0.6009245 0.4514357 0.5748897
## 6 0.5013298 0.9615398 0.9117793 1.0131594 0.5013298
+ こちらからデータファイルをダウンロードし,プロジェクトフォルダに保存してください。
read_csv("M1score.csv",na=".") %>% dplyr::filter(年代==18) %>%
dplyr::select("立川志らく","塙宣之","上沼恵美子","松本人志","中川礼二","オール巨人","富澤たけし") %>%
as.matrix() -> M1_2018
## Parsed with column specification:
## cols(
## .default = col_double(),
## 演者 = col_character()
## )
## See spec(...) for full column specifications.
row.names(M1_2018) <- c("見取り図",
"スーパーマラドーナ",
"かまいたち",
"ジャルジャル",
"ギャロップ",
"ゆにばーす",
"ミキ",
"トム・ブラウン",
"霜降り明星",
"和牛")
M1_2018
## 立川志らく 塙宣之 上沼恵美子 松本人志 中川礼二
## 見取り図 85 85 88 83 91
## スーパーマラドーナ 88 89 89 85 90
## かまいたち 88 92 94 90 92
## ジャルジャル 99 93 88 92 93
## ギャロップ 86 89 89 86 90
## ゆにばーす 87 82 84 80 91
## ミキ 89 90 98 88 93
## トム・ブラウン 97 93 86 91 90
## 霜降り明星 93 98 97 94 96
## 和牛 93 94 98 93 94
## オール巨人 富澤たけし
## 見取り図 88 86
## スーパーマラドーナ 87 89
## かまいたち 89 91
## ジャルジャル 93 90
## ギャロップ 87 87
## ゆにばーす 84 86
## ミキ 90 90
## トム・ブラウン 87 89
## 霜降り明星 93 91
## 和牛 92 92
# 距離データ表示
(dist_M1 <- dist(M1_2018))
## 見取り図 スーパーマラドーナ かまいたち ジャルジャル
## スーパーマラドーナ 6.403124
## かまいたち 13.038405 8.426150
## ジャルジャル 19.646883 15.264338 13.416408
## ギャロップ 5.477226 3.000000 8.831761 16.613248
## ゆにばーす 7.348469 10.908712 18.761663 22.934690
## ミキ 13.784049 10.535654 5.291503 15.297059
## トム・ブラウン 16.941074 11.916375 12.609520 7.416198
## 霜降り明星 22.583180 18.083141 10.862780 12.489996
## 和牛 20.149442 15.652476 8.246211 12.000000
## ギャロップ ゆにばーす ミキ トム・ブラウン
## スーパーマラドーナ
## かまいたち
## ジャルジャル
## ギャロップ
## ゆにばーす 11.045361
## ミキ 11.045361 19.595918
## トム・ブラウン 13.228757 19.104973 15.652476
## 霜降り明星 18.601075 28.071338 11.661904 15.716234
## 和牛 16.431677 25.573424 8.124038 14.662878
## 霜降り明星
## スーパーマラドーナ
## かまいたち
## ジャルジャル
## ギャロップ
## ゆにばーす
## ミキ
## トム・ブラウン
## 霜降り明星
## 和牛 4.898979
library(MASS)
##
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
##
## select
result.MDS2 <- isoMDS(dist_M1,k=2)
## initial value 1.421320
## iter 5 value 0.721192
## iter 10 value 0.195694
## iter 15 value 0.100712
## iter 20 value 0.074457
## iter 25 value 0.050977
## iter 30 value 0.029949
## iter 35 value 0.018306
## iter 40 value 0.015114
## iter 45 value 0.013833
## iter 50 value 0.013671
## final value 0.013671
## stopped after 50 iterations
result.MDS2$points %>% as.data.frame %>%
dplyr::mutate(label=rownames(.)) %>%
ggplot(aes(x=V1,y=V2,label=label))+geom_point()+
geom_text_repel(family = "HiraKakuProN-W3")+
xlim(-15,15) + ylim(-15,15)+
xlab("dim 1")+ylab("dim2")
result.MDS3 <- dist(t(M1_2018)) %>% isoMDS()
## initial value 11.739729
## iter 5 value 3.554095
## iter 10 value 0.528016
## iter 15 value 0.152710
## iter 20 value 0.051220
## final value 0.006151
## converged
result.MDS3$points %>% as.data.frame %>%
dplyr::mutate(label=rownames(.)) %>%
ggplot(aes(x=V1,y=V2,label=label))+geom_point()+
geom_text_repel(family = "HiraKakuProN-W3")+
xlim(-12,12) + ylim(-12,12)+
xlab("dim 1")+ylab("dim2")
同じ距離データからの分類でも,クラスター分析という方法もある。 クラスター分析は階層的な方法と非階層的な方法の二種類がある。
result.hcl <- hclust(dist_M1)
par(family = "HiraKakuProN-W3")
plot(result.hcl)
好きな数に切り分ければ良い。
cutree(result.hcl,3)
## 見取り図 スーパーマラドーナ かまいたち
## 1 1 2
## ジャルジャル ギャロップ ゆにばーす
## 3 1 1
## ミキ トム・ブラウン 霜降り明星
## 2 3 2
## 和牛
## 2
k-means法が代表的。
set.seed(123)
kmeans(dist_M1,3)
## K-means clustering with 3 clusters of sizes 4, 4, 2
##
## Cluster means:
## 見取り図 スーパーマラドーナ かまいたち ジャルジャル ギャロップ
## 1 17.388769 13.174355 6.100124 13.300866 13.727468
## 2 4.807205 5.077959 12.264495 18.614789 4.880647
## 3 18.293979 13.590356 13.012964 3.708099 14.921002
## ゆにばーす ミキ トム・ブラウン 霜降り明星 和牛
## 1 23.000586 6.269361 14.660277 6.855916 5.317307
## 2 7.325636 13.740245 15.297795 21.834683 19.451754
## 3 21.019832 15.474767 3.708099 14.103115 13.331439
##
## Clustering vector:
## 見取り図 スーパーマラドーナ かまいたち
## 2 2 1
## ジャルジャル ギャロップ ゆにばーす
## 3 2 2
## ミキ トム・ブラウン 霜降り明星
## 1 3 1
## 和牛
## 1
##
## Within cluster sum of squares by cluster:
## [1] 535.86510 559.00091 86.46434
## (between_SS / total_SS = 71.2 %)
##
## Available components:
##
## [1] "cluster" "centers" "totss" "withinss"
## [5] "tot.withinss" "betweenss" "size" "iter"
## [9] "ifault"
## Parsed with column specification:
## cols(
## .default = col_double(),
## Name = col_character(),
## team = col_character(),
## position = col_character(),
## bloodType = col_character(),
## throw.by = col_character(),
## batting.by = col_character(),
## birth.place = col_character(),
## birth.day = col_date(format = ""),
## 背番号 = col_character()
## )
## See spec(...) for full column specifications.