www.crosshyou.info

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

OECD Threatened species data analysis 1 - read csv file into R

Hello. In this blog, I will analyize OECD Threatend species data.
First, I goet data from OECD web site.

f:id:cross_hyou:20210516162641p:plain

Biodiversity - Threatened species - OECD Data

The csv file looks below

f:id:cross_hyou:20210516162741p:plain

Let's read this file into R.

First of all, load tidyverse pachage.

f:id:cross_hyou:20210516163102p:plain

Then, use read_csv() function to read a csv file.

f:id:cross_hyou:20210516163318p:plain

let's check if we load the file sucsessfully with str() function.

f:id:cross_hyou:20210516163716p:plain

It seems we successfully load the csv file data.

The, check how may values are threre in each variables. I use table() function.

f:id:cross_hyou:20210516164314p:plain

So, there are 36 locations and 3 subjects. Others are only one value.
INDICATOR is THREATENED, MEASURE is PC_SPECIES, FREQUENCY is A and TIME is 2015.
So, this data is as of 2015 data set.

Let's remove INDICATOR, MEASURE, FREQUENCY and TIME.

f:id:cross_hyou:20210516165209p:plain

I made SUBJECT to factor class.

f:id:cross_hyou:20210516164946p:plain

Then, use summary to see data frame summary.

f:id:cross_hyou:20210516165304p:plain

Value is number of threatened species expressed as percentage of total known species. So the highest dangerous location has 53.556% and lthe owest locations has 1.754%.
That's it.
For the next blog

 

www.crosshyou.info

 

都道府県別の食品営業施設処分件数のデータの分析6 - R言語で重回帰分析をしたが、どの説明変数も有意ではなく結局、平均値が一番となった。

 

www.crosshyou.info

 の続きです。

前回はper_shobun: 食品営業施設当たりの処分件数をshishutsu: 消費支出で回帰分析しました。

今回はさらに変数を加えて回帰分析をしたいと思います。

はじめに、都道府県ごとの平均値のデータフレームを作りました。

f:id:cross_hyou:20210516085716p:plain

f:id:cross_hyou:20210516085939p:plain

このように、同じ値の行が重複していますので、distinct関数で重複している行を削除します。

f:id:cross_hyou:20210516090411p:plain

もう一度、head関数ではじめの数行を表示します。

f:id:cross_hyou:20210516090549p:plain

都道府県の重複がなくなりましたね。

summary関数でデータフレームの概要をみます。

f:id:cross_hyou:20210516091004p:plain

 

per_shobunを作ります。

今回は100万施設当たりの処分件数にします。

f:id:cross_hyou:20210516091413p:plain

per_shobunの箱ひげ図をみてみます。

f:id:cross_hyou:20210516091944p:plain

上方に外れ値があります。

散布図マトリックスをみてみましょう。

f:id:cross_hyou:20210516092117p:plain

f:id:cross_hyou:20210516092133p:plain

相関係数マトリックスをみてみます。

f:id:cross_hyou:20210516092235p:plain

pop: 総人口とshisetsu: 食品営業施設数が0.962とかなり高い相関です。

per_shobunをpop, shishutsu, ew, big3の4つの変数で重回帰分析してみます。

f:id:cross_hyou:20210516092623p:plain

回帰分析の式を 被説明変数 ~ (説明変数1 + 説明変数2 + 説明変数3)^2とすると、それぞれの説明変数の交差項も自動で作ってくれます。

p-valueが0.5052ということなので、有意なモデルでは無いです。

step関数でいらない変数・交差項を削除します。

f:id:cross_hyou:20210516093218p:plain

p-valueが0.3501なので有意な統計モデルでは無いですね。big3のp値が0.1346と0.05より高いので削除してみます。

f:id:cross_hyou:20210516093608p:plain

update関数でbig3を削除して、anova関数で削除前のlm_model4と削除後のlm_model5を比較しています。p値は0.1346なので有意な違いはありません。

summary関数でみてみます。

f:id:cross_hyou:20210516093908p:plain

p-valueが0.4974なので有意なモデルではないですね。pop:shishutsuを削除してみます。

f:id:cross_hyou:20210516094305p:plain

f:id:cross_hyou:20210516094321p:plain

p-valueが0.6401なので有意なモデルではないです。どんどんp-valueが大きくなっていますね。。pop:ewも削除します。

f:id:cross_hyou:20210516094658p:plain

p-valueは0.7048で有意なモデルではないです。ewを削除します。

f:id:cross_hyou:20210516094931p:plain

p-valueが0.495ですので有意なモデルではないです。

popを削除します。

f:id:cross_hyou:20210516095225p:plain

p-valueは0.3146と0.05よりも大きく有意ではないです。

shishutsuも削除します。つまり切片項だけのモデルです。

f:id:cross_hyou:20210516095608p:plain

p値が5.24e-10と有意になりました。

つまり、per_shobunはpopやshishutsuとは関係なく、平均4519.3ということです。

95%の信頼区間を求めましょう。

f:id:cross_hyou:20210516100250p:plain

別の方法でも求めてみます。

f:id:cross_hyou:20210516101045p:plain

値が少し違うのは、per_shobun_avgが4519.309, sqrt(per_shobun_var/n)が577.0622とより細かい値だからですね。

今回は以上です。

はじめから読むには、

 

www.crosshyou.info

 です。

都道府県別の食品営業施設処分件数のデータの分析5 - R言語で単回帰分析と多項式線形回帰分析をする

 

www.crosshyou.info

 の続きです。

今回はR言語のlm関数を使って、単回帰分析と多項式線形回帰分析をしてみます。

まずは、変数同士の散布図をみてみます。

f:id:cross_hyou:20210515124012p:plain

f:id:cross_hyou:20210515124028p:plain

相関係数マトリックスもみてみます。

f:id:cross_hyou:20210515124152p:plain

per_shobun: 食品営業施設当たりの処分件数と一番相関の強いのはshishutsu: 消費支出(全世帯)(円)ですね。per_shobunをshishutsuで回帰分析してみます。lm関数を使います。

f:id:cross_hyou:20210515124424p:plain

p-value < 2.2e-16ということなので有意なモデルです。shishutsuが大きい値ほど、per_shobunは小さな値になります。

残差プロットを見てみます。

f:id:cross_hyou:20210515124656p:plain

f:id:cross_hyou:20210515124711p:plain

残差の散らばりぐあいが右側にいくほど大きくなっています。これはこの統計モデルはよくないということですね。

per_shishutsuとshishitsuの散布図に回帰直線を重ねてみましょう。

f:id:cross_hyou:20210515124952p:plain

f:id:cross_hyou:20210515125007p:plain

続いて、多項式回帰分析をしてみます。poly()という関数で多項式を作れます。

f:id:cross_hyou:20210515125311p:plain

p-value < 2.2e-16なので有意なモデルです。単回帰分析のR-squareは0.1653でしたがこちらは0.1832と数値が大きくなっていますのであてはまりが改善しています。

残差プロットを見てみます。

f:id:cross_hyou:20210515125656p:plain

f:id:cross_hyou:20210515125713p:plain

散布図と回帰直線を重ねてみます。

f:id:cross_hyou:20210515130341p:plain

f:id:cross_hyou:20210515130356p:plain

散布図のY軸の範囲を0~5にして描いてみます。

f:id:cross_hyou:20210515130847p:plain

f:id:cross_hyou:20210515130903p:plain

多項式回帰のほうは曲線になっていることがよくわかります。
今回は以上です。

次回は

 

www.crosshyou.info

 です。

はじめから読むには

 

www.crosshyou.info

 です。

 

 

 

 

都道府県別の食品営業施設処分件数のデータの分析4 - 昔のほうが処分件数はあきらかに多かった。

 

www.crosshyou.info

 の続きです。

前回のグラフで、最近のほうが食品営業施設当たりの処分件数はバラツキが小さく、件数も低いことがわかりました。

そのことを検定してみましょう。

1975年から1980年までの6年間のper_shobun: 食品営業施設当たりの処分件数と

2002年から2007年までの6年間のper_shobunを比較してみます。

f:id:cross_hyou:20210515081923p:plain

まずはこのように、per_shobun_old: 1975年から1980年のper_shobunとper_shobun_new: 2002年から2007年のper_shobunのオブジェクトを作りました。

二つのデータを小さい順に並べてグラフにしてみました。

f:id:cross_hyou:20210515083725p:plain

f:id:cross_hyou:20210515083804p:plain

1975-1980年のほうが値が大きいことがわかりますね。

var.test関数で分散が同じかどうかを見てみます。

f:id:cross_hyou:20210515084023p:plain

p\value < 2.2e-16、sample estimates: ratio of variance 19.6032と分散が同じとは言えないですね。

var関数で分散の値を確認しておきましょう。

f:id:cross_hyou:20210515084255p:plain

1975-1980年のほうは2.49、2002-2007年のほうは0.127と全然違います。

wilcox.tset関数で両者の分布位置に違いがあるかどうかを検定します。

f:id:cross_hyou:20210515084517p:plain

p-value < 2.2e-16と0.05よりも小さいです。

両者に分布位置に違いがあるといえます。

両者の平均値、中央値を確認しておきましょう。

f:id:cross_hyou:20210515084811p:plain

平均値、中央値どちらも1975-1980年のデータのほうが大きいですね。

今回は以上です。

次回は

 

www.crosshyou.info

 です。

はじめから読むには

 

www.crosshyou.info

 です。

読書記録 - 「花粉症と人類」 小塩海平 著 (岩波新書)

 

花粉症と人類 (岩波新書 新赤版 1869)

花粉症と人類 (岩波新書 新赤版 1869)

  • 作者:小塩 海平
  • 発売日: 2021/02/22
  • メディア: 新書
 

 花粉症は文明病というか人類が自然を乱開発して自然のバランスを崩した結果だと言える。

日本はスギ花粉症、アメリカはブタクサ花粉症、ヨーロッパはバラの花粉症など地域によって花粉症を起こす植物が違う。

 

都道府県別の食品営業施設処分件数のデータの分析3 - 1977年の長野県は処分件数が異常に多かった。

 

www.crosshyou.info

 の続きです。

per_shobun: 食品営業施設当たりの処分件数のサマリを見てみます。

f:id:cross_hyou:20210511120528p:plain

最小値は0、最大値は14.61、中央値は0.198、平均値は0.463です。

最大値の14.61は異常に大きいですよね。。

何年のどこの都道府県なのか確認しましょう。

f:id:cross_hyou:20210511120944p:plain

which.max関数で何行目にper_shobunの最大値があるかを調べ、その行だけを表示しています。1977年の長野県ですね。8万5260の食品営業施設に対して処分件数が1万2458件と14.61%もあります。

東日本と西日本で区別して、per_shobunのデータを見てみます。

f:id:cross_hyou:20210511121249p:plain

東日本のほうが標準偏差やCVが大きいです。データのバラツキが大きいということですね。

var.test関数で東日本と西日本でper_shobunの分散に違いがあるかどうかをチェックします。

f:id:cross_hyou:20210511121611p:plain

p-valueが<2.2e-16ということなので東日本と西日本のper_shobunは分散の値はあきらかに違いがあります。

分散に違いがあるので、wilcox.test関数で両者の分布位置に違いがあるかを調べます。

f:id:cross_hyou:20210511122105p:plain

p-valueは8.367e-06と0.05よりも小さいです。両者の分布位置には違いがあります。

密度グラフを描いてみます。

f:id:cross_hyou:20210511122402p:plain

f:id:cross_hyou:20210511122415p:plain

都道府県別に平均値を計算してランキングしてみましょう。

f:id:cross_hyou:20210511122604p:plain

f:id:cross_hyou:20210511122619p:plain

東京都が一番小さい値で佐賀県が一番大きい値です。

per_shobunの年ごとの変化をみてみましょう。

f:id:cross_hyou:20210511124047p:plain

f:id:cross_hyou:20210511124106p:plain

昔はper_shobunの値にバラツキがありましたが、近年はほとんどないことがわかります。

今回は以上です。

次回は

 

www.crosshyou.info

 です。

はじめから読むには

 

www.crosshyou.info

 です。

 

都道府県別の食品営業施設処分件数のデータの分析2 - R言語のgeom_histogram関数でヒストグラムを描く。

 

www.crosshyou.info

 の続きです。

今回はR言語のggplot2パッケージでグラフをいくつか描いてみます。

まず、geom_histogram関数でヒストグラムを描きます。

f:id:cross_hyou:20210509083506p:plain

f:id:cross_hyou:20210509083520p:plain

一部、大きな数のデータがありますね。X軸を対数目盛にしてみます。

f:id:cross_hyou:20210509083820p:plain

f:id:cross_hyou:20210509083833p:plain

scale_x_log10()を加えると、X軸が対数目盛になります。

続いて、東日本と西日本で区別してみます。

f:id:cross_hyou:20210509085040p:plain

f:id:cross_hyou:20210509085053p:plain

east(東日本)のほうが施設数が多い感じですね。fill = ewで色分け、facet_grid(. ~ ew)で別々のヒストグラムにしています。

同じように、食品営業施設処分件数もヒストグラムを描いてみます。

f:id:cross_hyou:20210509085615p:plain

f:id:cross_hyou:20210509085631p:plain

東日本のほうが分布の幅が広い感じですね。

食品営業施設当たりの処分件数の変数を作り、それのヒストグラムを見てみます。

f:id:cross_hyou:20210509090250p:plain

f:id:cross_hyou:20210509090309p:plain

per_shobunという名前で食品営業施設100か所当りの処分件数の変数を作りました。

0件というケースが大半ですね。

per_shobunはいわゆるカウントデータ、というものですね。

今回は以上です。

次回は

 

www.crosshyou.info

 です。

 

はじめから読むには、

 

www.crosshyou.info

 です。