Rでコレスポンデンス分析ー対応分析, CA, fviz_ca_biplot, repelー

Rでデータ解析と可視化

各家庭における家事は、それぞれどんな分担傾向があるのか???

夫のみ、妻のみ、夫婦一緒に、夫婦どちらかが、行う家事はどういった傾向がみられるのか?実施頻度の情報が、目で見て分かり易い図を作ってみます。

料理のイラスト「男性」お風呂掃除のイラストファイナンシャルプランナーのイラスト(若者)

この度は、コレスポンデンス分析(対応分析)を行います。

コレスポンデンス分析は、アンケート調査などのクロス集計表をマッピングする際にもよく使われます!


1.コレスポンデンス分析とは


行と列の情報をもとにクロス集計表を作ります。

更に、これらの項目間の関係をよりわかりやすく視覚的に示すものがコレスポンデンス分析、あるいは対応分析です。

上記に示したように、家事を夫婦がどのような分担で、どのような頻度で実施しているかについてのデータセット(Housetasks ※)を見てみます。(Rのデータセットにありますので、そちらは後述します)

※A data frame containing the frequency of execution of 13 house tasks in the couple. (夫婦の13の家事タスクの実行頻度を示すデータフレーム。)

家事の実行頻度のクロス集計表(横(行)ー実施する人×縦(列)ー13つの家事、数値は実施頻度)

Wife(妻) Alternating(夫・妻どちらか) Husband(夫) Jointly(夫婦一緒に)
Laundry(洗濯) 156 14 2 4
Main_meal(主食) 124 20 5 4
Dinner(夜御飯) 77 11 7 13
Breakfeast(朝御飯) 82 36 15 7
Tidying(片付け) 53 11 1 57
Dishes(料理) 32 24 4 53
Shopping(買い物) 33 23 9 55
Official(公式) 12 46 23 15
Driving(車の運転) 10 51 75 3
Finances(財務) 13 13 21 66
Insurance(保険) 8 1 53 77
Repairs(修理) 0 3 160 2
Holidays(休日) 0 1 6 153





2.コレスポンデンス分析をやってみよう(Housetasksのデータセット使用)


library(devtools) #使用パッケージ 
library(ggplot2)
library(factoextra)
library(FactoMineR)

head(housetasks)
           Wife Alternating Husband Jointly
Laundry     156          14       2       4
Main_meal   124          20       5       4
Dinner       77          11       7      13
Breakfeast   82          36      15       7
Tidying      53          11       1      57
Dishes       32          24       4      53

res.ca <- CA(housetasks, graph=FALSE) #1 コレスポンデンス分析
fviz_ca_biplot(res.ca) #2 作図
fviz_ca_biplot(res.ca,repel=TRUE) #3 repel=TRUEで表示名の重なりを減らす
fviz_ca_biplot(res.ca,repel=TRUE,col.col = "orange", col.row = "dark green",labelsize = 4,pointsize = 2)+theme_bw()+xlim(-1.3, 1.7)+ylim(-1.6,1.0) #4 ラベル色、ラベルサイズ、ポイントサイズ、図の種類、横軸縦軸目盛の指定

#1   CA(data, graph=FALSE)コレスポンデンス分析

#2 コレスポンデンス分析をプロット

横(行)ー実施する人 は、赤字、縦(列)ー13つの家は青字でプロットされています。

#3  repel=TRUEで、ラベル同士の重なりを減らしました。

#4 ラベル色、ラベルサイズ、ポイントサイズ、図の種類、横軸縦軸目盛の指定

col.col = “orange” #色.列, col.row = “dark green”#色.行

labelsize = 4 #図中のラベルの大きさ  ,pointsize = 2 #図中のポイントの大きさ

theme_bw() #図の種類(背景や枠など)を指定

(図の種類の参考サイト:https://ggplot2.tidyverse.org/reference/ggtheme.html)

この結果から、下記の傾向が読み取れました。

・Wife(妻)は、LandryやMain_meal、Dinner、Breakfeastを行う頻度が高い。

・Husband(夫)は、RepairやDrivingを行う頻度が高い。

・Alternative(夫婦それぞれ)は、Officialを行う頻度が高い。

・Jointly(夫婦一緒に)は、Holidaysや、Financesなどを行う頻度が高い。

コレスポンデンス分析は、クロス集計表を視覚的にも理解にしやすいため、広く使われています。




コメント

タイトルとURLをコピーしました