Rで何かをしたり、読書をするブログ

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

都道府県別の事業所数(民営)のデータ分析6 - R言語のgrepl関数、wilcox.test関数で都道府と県は違うのかを調べる。

 

www.crosshyou.infoの続きです。

 

R Programming By Example: Practical, hands-on projects to help you get started with R
 

 という本を読み始めましたのですが、ここでgrepl関数というのを知ったので、忘れないうちに使ってみようと思います。

grepl関数は文字列の中である文字列が含まれていればTRUEを、含まれていなければFALSEを返す関数です。この関数を使って都道府県を県と都道府に二分して人口密度や1人当りの課税所得などに違いがあるのかどうか調べようと思います。

f:id:cross_hyou:20200516141436j:plain

 これで、東京都、北海道、京都府、大阪府はFALSEになっているはずです。

確認してみます。

f:id:cross_hyou:20200516141546j:plain

うまくいきました。
それではMitsuの平均値を比べてみましょう。2016年のデータで比べてみます。

f:id:cross_hyou:20200516141905j:plain

FALSE、つまり都道府のほうが人口密度は高いですね。統計的に有意な違いか調べたいです。

その前にいちいち[df$Year == 2016]とするのは面倒なので、インデックスを作ります。

f:id:cross_hyou:20200516142931j:plain

確認してみます。

f:id:cross_hyou:20200516143104j:plain

インデックスは正しく動いています。
はじめにvar.test関数で分散が同じかどうかを調べます。

for関数で4つの変数を一変に調べます。

f:id:cross_hyou:20200516144037j:plain

どの変数でもp値は0.05以下なので分散が同じとは言えません。

分散が同じとは言えないので、t.test関数ではなくて、wilcox.test関数を使います。

f:id:cross_hyou:20200516144426j:plain

p^value = 2.274e-13と0.05よりも小さいので、県と都道府では人口密度に有意な違いがあります。都道府のほうが人口密度は高いです。

 

次はperInce, 1人当り課税所得です。はじめに県と都道府の平均値を計算しましょう。

f:id:cross_hyou:20200516144919j:plain

県平均は128万9千円、都道府平均は155万円です。県平均のほうが低いです。

wilcox.test関数で検定します。

f:id:cross_hyou:20200516145227j:plain

p-valueは0.1161と0.05よりも大きいので、1人当り課税所得は違いがあるとは言えません。

 

次は事業所数(民営) 1~3人です。perSです。

f:id:cross_hyou:20200516145743j:plain

型平均は263か所、都道府平均は248か所です。

wilcox.test関数で検定します。

f:id:cross_hyou:20200516145951j:plain

p-value = 0.2248と0.05よりも大きいです。perSも違いは無いです。

 

perL, 人口1万人当りの300人以上の事業所数はどうでしょうか?

f:id:cross_hyou:20200516150337j:plain

県平均は0.7か所、都道府平均は1.2か所です。

wilcox.test関数で検定をします。

f:id:cross_hyou:20200516150525j:plain

p-valueは0.03414と0.05よりも低いです。300人以上の事業所数の数は県と都道府では違いがありました。

今回は以上です。