こんにちは!

まえまえからRmarkdownを使ってみたかったので

Rmarkdownで世界の幸福度調査2017なるものを解析してみました

 

World Happiness (出典:World Happiness Report2017)

様々な変数から国民の幸福度を図っています. 今回はどのような計算式でこの幸福度が算出されているのか確かめます.

幸福度のランキングの概略は以下の通り

WH<-read.table("clipboard",header = T)
head(WH[,c(1:5)])
##       Country Happiness.Rank Happiness.Score Whisker.high Whisker.low
## 1      Norway              1           7.537     7.594445    7.479556
## 2     Denmark              2           7.522     7.581728    7.462272
## 3     Iceland              3           7.504     7.622030    7.385970
## 4 Switzerland              4           7.494     7.561772    7.426227
## 5     Finland              5           7.469     7.527542    7.410458
## 6 Netherlands              6           7.377     7.427426    7.326574

1位がノルウェーで2位がデンマーク3位がアイスランドと北欧が続いているのが分かります.

うわ,日本は51位,先進国の中で最低のランクみたいです...

 

全部で155の国(サンプル)があり,8個の変数があります.

目的変数

Happiness.Score:幸福度

説明変数

Economy..GDP.per.Capita:一人あたりの国内総生産

healthy life expectancy:健康寿命

Family:家族指数

freedom:自由指数

Generosity:寛容さ

Trust..Government.Corruption:汚職の無さ

Dystopia.Residual:貧富の差

 

重回帰分析で回帰構造を確かめます. さて,どのような回帰式がでてくるでしょうか.

WH.R<-lm(Happiness.Score~.,WH[,-c(1,2,4,5)])
summary(WH.R)
## 
## Call:
## lm(formula = Happiness.Score ~ ., data = WH[, -c(1, 2, 4, 5)])
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -5.516e-04 -2.363e-04 -1.224e-05  2.559e-04  4.735e-04 
## 
## Coefficients:
##                                Estimate Std. Error   t value Pr(>|t|)    
## (Intercept)                   1.581e-04  1.350e-04     1.171    0.243    
## Economy..GDP.per.Capita.      1.000e+00  1.175e-04  8513.538   <2e-16 ***
## Family                        9.999e-01  1.158e-04  8637.659   <2e-16 ***
## Health..Life.Expectancy.      9.999e-01  1.845e-04  5419.877   <2e-16 ***
## Freedom                       1.000e+00  1.973e-04  5069.249   <2e-16 ***
## Generosity                    1.000e+00  1.907e-04  5245.012   <2e-16 ***
## Trust..Government.Corruption. 9.998e-01  2.773e-04  3605.631   <2e-16 ***
## Dystopia.Residual             1.000e+00  4.704e-05 21259.299   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.000286 on 147 degrees of freedom
## Multiple R-squared:      1,  Adjusted R-squared:      1 
## F-statistic: 3.442e+08 on 7 and 147 DF,  p-value: < 2.2e-16

え,,,全ての変数の回帰係数が全て1になったので特に係数をかけることなく全ての変数を足しているということが分かりました笑

くそ意味ない解析してしまいましたーー笑

当たり前ですが,P値は非常に小さくなり全ての変数が有意であるという結果となりました.

 

全ての変数をただ足すだけなんてナンセンスだ!

と思いましたが,そもそも説明変数自体がなんらかの加工を施された指標であるのでそれぞれの指標の算出方法を細かく見なくてはいけないみたいですね.

今回は目新しい結果は出てきませんでしたが,日本の幸福度が非常に低いということはわかりました.

幸福度あげていきましょう!!

 

というかこれでRmarkdown出来ているのか??