www.crosshyou.info

政府統計の総合窓口のデータや、OECDのデータを使って、Rの練習をしています。ときどき、読書記録も載せています。

読書記録 - 「ミステリーの人間学 英国古典探偵小説を読む」 廣野 由美子 著 岩波新書

2009年に出版された本です。

チャールズ・ディケンズ、ウィルキー・コリンズ、アーサー・コナン・ドイル、G・K・チェスタトン、アガサ・クリスティーの探偵小説についての評論?です。

探偵小説をトリックの謎解き小説として捉えるのではなくて、人間をいかに描くか、という小説として捉えた本です。

序章の最後の一文が「つまり、探偵小説とは、人間の弱点や人間性の暗部を探求するうえで、格好のジャンルのひとつだと言えるのである。」という文があって、このテーマにそって、5人の作家の探偵小説を紹介しています。

都道府県別の雇用動向調査のデータ分析6 - 男性と女性で若年層、老年層の入職者比率に違いはあるのか?

Bing Image Creatorから生成(Natural Rainforest and a Bird)

www.crosshyou.info

このポストは上のポストの続きです。

前回のポストで、若年層の入職者比率では男女の違いはなさそうでしたが、老年層の入職者比率では違いがありそうでした。

今回はもう少し詳しく調べます。

まず、分析用のデータフレームを作成します。

pivot_wider()関数で、young_男、young_女、elder_男、elder_女という4つの変数を作りました。

そして、

mutate()関数で、young:若年層の入職者比率の男女差の変数として、young_diffを作成して、elder:老年層の入職者比率の男女差の変数として、elder_diffを作成しました。

それぞれの値の大きなところ、小さなところを見てみます。

young_diffの小さいところ、つまり若年層の入職者比率で、女性のほうが大きいところは、熊本県、福井県、岐阜県、沖縄県、奈良県、京都府、和歌山県、山形県です。

young_diffの大きいところ、つまり若年層の入職者比率で、男性のほうが大きいところは、沖縄県、岡山県、宮崎県、香川県、長崎県、山形県、佐賀県、福岡県でした。

elder_diffの小さいところ、つまり老年層の入職者比率で女性のほうが大きいところは、和歌山県、宮崎県、島根県、青森県、富山県、沖縄県、長野県、鳥取県、佐賀県でした。

elder_diffの大きいところ、つまり老年層の入職者比率で男性のほうが大きいところは、山口県、和歌山県、京都府、香川県、岩手県、佐賀県、群馬県、石川県、熊本県でした。

ヒストグラムで分布を見てみましょう。

young_diffのヒストグラムは、0のところを中心にした分布です。この分布を見る感じでは、男女差に違いはないようです。

elder_diffのヒストグラムは、0よりも右側に分布の中心があります。

続いて、inferパッケージのワークフローでyoung_diff, elder_diffの平均値を求めます。

young_diffの平均値は0.00553, elder_diffの平均値は0.0909です。

次は、ブートストラップ法で平均値をそれぞれ1000個生成します。

そうしたら、この1000個の平均値のセットから信頼区間を計算します。

young_diffの平均値の信頼区間は0を含んでいますが、elder_diffの平均値の信頼区間は0を含んでいないです。

つまり、youngのほうは性別で差は無いですが、elderのほうは性別で差があり、男性のほうが大きいです。

最後に、ブートストラップ法で生成した平均値の分布、実際の平均値、平均値の信頼区間をグラフにします。

まずは、young_diffのほうから。

信頼区間が0を含んでいることがわかります。

elder_diffを視覚化します。

信頼区間が0を含んでいないことがわかります。

今回は以上です。

初めから読むには、

www.crosshyou.info

です。

都道府県別の雇用動向調査のデータ分析5 - 若年層の入職者比率と老年層の入職者比率

Bing Image Creator から生成:Photographic Flower Field

www.crosshyou.info

このポストは、上のポストの続きです。

前回のポストでは、年によってtotalの入職者数に統計的な違いは無いことがわかりました。

今回は、分析の観点を変えて、若年層の入職者数の割合と老年層の入職者数の割合を調べてみます。

まず、はmutate()関数でyoungとelderという名前で変数を作ります。

u19が19歳以下の入職者数、a20_24は20歳から24歳の入職者の数です。

a60_64は60歳から64歳の入職者数、o65は65歳以上の入職者の数です。

それぞれの平均値をgender別にみてみます。

youngのほうは、女性は0.160で、男性は0.165とそれほど違いはありませんが、

elderのほうは、女性は0.0911で、男性は0.182と男性が女性の2倍です。

arrange()関数でそれぞれの値の大きいところ、小さいところをみてみます。

石川県、宮崎県、福井県、佐賀県、高知県、沖縄県、長野県が顔をだしました。

youngの比率が高いところはどこでしょうか?

熊本県、沖縄県、宮崎県、奈良県、京都府、岐阜県、岡山県、広島県の名前があがりました。宮崎県と沖縄県は比率が小さいほうでも顔を出していましたね。

次は、elderの上位の都道府県、下位の都道府県をみてみましょう。

鳥取県、京都府、大分県、奈良県、茨城県、鹿児島県、栃木県、沖縄県が出てきました。そして、注目は全て女性ということです。女性で60歳以上で入職するのは少ないのですね。

反対にelderの大きなところはどこでしょうか?

山口県、和歌山県、香川県、京都府、岩手県、長野県、佐賀県が顔を出しました。和歌山県が4回も顔を出しています。そして、女性は、2015年の和歌山県だけです。

男性、女性別のヒストグラムを描いてみましょう。

youngは男女差は大きくないですね。

elderのほうは、女性のほうが分布が左によっていることがわかります。

今回は以上です。

次回は

www.crosshyou.info

です。

初めから読むには、

www.crosshyou.info

です。

都道府県別の雇用動向調査のデータ分析4 - Rのinferパッケージのワークフローで、ANOVA分析。年によって入職者数に違いがあるとは言えない。

Bing Image Creator から作成:Clean River

www.crosshyou.info

このポストは上のポストの続きです。

前回の分析では、都道府県別で見たとき、男性の入職者数と女性の入職者数には違いがある、ということがわかりました。

今回は、年によって入職者数に違いがあるかどうかを調べましょう。

2014年から2020年までの7年間のデータです。あまり違いは無いように見えます。

group_by()関数、summarize()関数、mean()関数で年別の平均値をみてみます。

一番大きな値は107で、一番少ない値は99.8でした。

この平均値の違いは統計的に有意なものでしょうか?

複数のグループ間で平均値に違いがあるかどうかは、ANOVA分析です。

今回もtheory-baseのANOVAではなくて、simulation-baseのANOVA分析をします。

参考にしたウェブサイトは、Tidy ANOVA (Analysis of Variance) with infer • infer

(https://infer.netlify.app/articles/anova) です。

それでは、F値を計算します。

F値は、0.0528となりました。

次は、年と入職者数は関係ないという仮定の下でのF値の分布を生成します。

こうして生成したF値のnull_distrobutionと実際のサンプルのF値をグラフにしてみます。

赤い垂線がサンプルのF値の値です。このグラフを見ると、明らかに年によって入職者数には違いは無いとわかります。

p値を計算してみます。

p値が0.999なので、年によって入職者数に違いが無いことがわかりました。

これは、47都道府県を一つの塊としてみたときの結論です。

前回のポストと同じように、都道府県別の違いを考慮に入れたらどうなるでしょうか?

inferパッケージのワークフローでは、2つの説明変数のANOVAはできないようなので、

aov()関数でtheory-baseのANOVAをやってみました。

yearの行のPr(>F)の値、0.178がp値です。0.05よりも大きな値ですから、都道府県別の違いを考慮にいれてもなお、年による違いはあるとはいえません。

今回は以上です。

次回は

www.crosshyou.info

です。

初めから読むには、

www.crosshyou.info

です。

 

読書記録 - 「美学への招待 増補版」 佐々木 健一 著 中公新書

この本を読む前は、美学というものは、"美しい"に関する学問だと思っていましたが、

英語では、"aesthetics"と言うそうで、"感性"に関する学問だそうです。

私がこの本を読んで感じたことは、美学は、芸術に関する哲学、美しいに関する哲学だと感じました。

都道府県別の雇用動向調査のデータ分析3 - 女性の入職者数と男性の入職者数に違いがあるかどうかをRで信頼区間を計算して調べる。

UnsplashAlexander Sinnが撮影した写真 

www.crosshyou.info

の続きです。前回は女性の入職者数と男性の入職者数の分布状況をヒストグラムにしてみました。ヒストグラムの分布形状は女性と男性で違いがあるようには見えませんでした。

今回はこれを、Rを使って確認してみます。

まずは、女性と男性の入職者数の平均値を確認します。

group_by()関数、summarize()関数、mean()関数を使います。女性の平均は、54.9で男性の平均は51.2です。

入職者数の分布形状は正規分布の形状ではありませんでしたので、シミュレーションベースで2つの平均値に違いがあるかどうかを調べます。

inferパッケージの読み込みをします。

女性の平均 - 男性の平均 を求めます。

女性の平均値のほうが男性の平均よりも3.74大きいです。

続いて、ブートストラップ法で男女差のサンプルを1000回計算します。

visualuze()関数でこの男女差のヒストグラムをみてみます。

0のところに赤い垂線を入れました。

95%の信頼区間を計算します。

95%の信頼区間は、-7.01 ~ 14.9 となりました。0を含んでいますから、女性の平均値と男性の平均値では差があるとは言えないです。

先ほどのヒストグラムに信頼区間を重ねてみます。

inferパッケージには、通常(理論ベース)のt検定をする関数のt_test()関数がありますので、こちらでも試してみます。

信頼区間が-7.47 ~ 14.9 と同じような結果になりました。

女性の入職者数の平均値と、男性の平均は違いがあるとは言えません。

ここまでの議論は都道府県別の特性を考慮していませんでした。

今度は、同じ都道府県の中での女性の入職者数と男性の入職者数に差があるかどうかを調べましょう。

同じように、inferパッケージを使ってシミュレーションベースで調べます。

fit()という関数が回帰分析の係数を求める係数です。

gender男 のestimateが-3.74となりました。これは今までの結果と同じです。

各都道府県の係数、(これは愛知県が基準ですが)があるので、グラフにしてみます。

東京都がダントツで入職者数の数が多いことがわかります。

それでは、本題に戻ってブートストラップ法でこのgender男の係数を1000回シミュレーションして求めます。

1回目のブートストラップでは、gender男の係数は、-2.26, 2回目は04.09, 3回目は-2.81となったことがわかります。

この推定結果をヒストグラムにしてみます。

0の位置に赤い垂線を置きました。

こうしてみると、同じ都道府県の中では、男女差はあるようです。

信頼区間を計算します。

信頼区間は、-6.37 ~ -1.13 と0を含んいないです。

つまり、男女差はあるということですね。

信頼区間の垂線も描きます。

今回は以上です。

次回は、

www.crosshyou.info

です。

初めから読むには、

www.crosshyou.info

です。

都道府県別の雇用動向調査のデータ分析2 - 入職者数のヒストグラムを男性・女性別に重ねてヒストグラムにする。

UnsplashSigmundが撮影した写真 

www.crosshyou.info

の続きです。

前回はCSVファイルにあるデータをRに読み込ませて、分析しやすいようにデータフレームを整えました。

今回はデータをグラフにしてみます。

まず、total(全体の入職者数)をヒストグラムにしてみます。

ggplot2パッケージで、ggplot() + geom_histogram()関数でヒストグラムを作成しました。

一部の都道府県は大きな値ですが、大半は300以下です。千人単位なので、30万人以下、ということです。

このtotalをgender別にわけてヒストグラムを描いてみます。

ヒストグラムの形状は性別で大きな違いは無いようです。

次は、year別のヒストグラムを描いてみます。

年によって大きな違いはなさそうです。ただ、totalは左に分布が偏っているので、少しわかりにくいですね。

最小値は2.9と0より大きい値なので、対数に変換してからヒストグラムを描いてみます。

左右対称に近い形状のヒストグラムになりました。

平方根にしたらどうでしょうか?

こんどは、男性と女性を重ねてヒストグラムにしてみます。

position = "identity" にすると、上のように重なります。alpha = 0.5 にして透けて見えるようにしています。

position = "dodge"にすると、

このように、隣同士に描かれます。

position = "stack"にすると、

このように重なります。

男性と女性での違いは無いようですね。

今回は以上です。

今回のヒストグラムのテクニックは、
geom_histogram | ggplot2 でヒストグラムを描く方法 (biopapyrus.jp)

で教えてもらいました。

次回は、

www.crosshyou.info

です。

 

はじめから読むには、

www.crosshyou.info

です。