データ屋さん

しがないデータ屋さんがデータ仕事について書き残す

M1の審査員傾向を分析(R言語)

前回に引き続き、今回も2021年M-1グランプリの審査のデータを用いて、傾向分析をしていきましょう。

ちなみに、前回は、審査員がつけた得点のバラつきの傾向を見ました。今回は、各審査員の得点の順位と総合順位に乖離があるのか検証しました。

Rによる箱ひげ図

少し冗長な書き方になっていますが、以下の通りで処理をしました。

library(ggplot2)
library(dplyr)
data <- read.csv('data.csv',header=T)
par(family="HiraKakuProN-W3")
target <- colnames(data)

target <- target[-1]

df <- data[,target]

boxplot(df)

df <- df %>% mutate(total = rowSums(df)) 
df <- df %>% dplyr::mutate(total_rank=min_rank(df$total))

# 審査員の得点をランクに変換し、データフレームに代入
df <- df %>% dplyr::mutate(rank_kyojin=min_rank(df$"オール巨人"))
df <- df %>% dplyr::mutate(rank_tomizawa=min_rank(df$"富澤"))
df <- df %>% dplyr::mutate(rank_hanawa=min_rank(df$"塙"))
df <- df %>% dplyr::mutate(rank_shiraku=min_rank(df$"志らく"))
df <- df %>% dplyr::mutate(rank_reiji=min_rank(df$"礼二"))
df <- df %>% dplyr::mutate(rank_matsumoto=min_rank(df$"松本"))
df <- df %>% dplyr::mutate(rank_kaninuma=min_rank(df$"上沼"))

# 総合順位と審査員の個別順位をデータフレームに代入
df$diff_kyojin <- df$total_rank - df$rank_kyojin
df$diff_tomizawa <- df$total_rank - df$rank_tomizawa
df$diff_hanawa <- df$total_rank - df$rank_hanawa
df$diff_shiraku <- df$total_rank - df$rank_shiraku
df$diff_reiji <- df$total_rank - df$rank_reiji
df$diff_matsumoto <- df$total_rank - df$rank_matsumoto
df$diff_kaminuma <- df$total_rank - df$rank_kaninuma

#差分だけのカラムを抽出
diff_data <- df[,grep("diff_",colnames(df))]
boxplot(diff_data,names=target)

f:id:gotto50105010:20211223174445p:plain
総合審査結果差分

図の見方

今回は、総合順位 - 個人の順位をしております。 そのため、総合で1位の得点で、個人得点の順位で2位をつけている場合は、-1になります。

マイナスになれば、過小評価。プラスになれば過大評価していることになります。

考察

※敬称略

審査員 傾向
オール巨人 多少ずれることはあれど、差が0が多いため、個人の結果と総合審査結果には乖離がなさそうですね。すごい
富澤 一番総合順位と乖離が大きそうですね。
乖離幅は小さいですね
志らく 大きく上振れている箇所が目立ちます。(ランジャタイの得点ですね)
礼二 塙さんと同じく乖離幅は小さいですね。
松本 オール巨人師匠と同じくほぼズレが無いです!
上沼 総合順位に比べて過大評価している傾向がありそうですね