crosshyou

主にクロス表(分割表)分析をしようかなと思いはじめましたが、あまりクロス表の分析はできず。R言語の練習ブログになっています。

Happy Planet Indexのデータ分析5 - R言語でCDF(Cumulative Density Function)図を描く

 

www.crosshyou.info

 の続きです。

今回は、R言語でCDF(Cumulative Density Function)図を描いてみようと思います。

CDFは横軸がデータで、縦軸がそのデータが全体で何パーセンタイルの位置にあるかです。

F(a) = Pr(x <= a)

数式であらわすと上のようになります。

HPI:Happy Planet IndexでCDFを作ってみます。

まず、ステップ1として、データの範囲で100個の数列を作ります。seq関数、min関数、max関数を利用します。

seq関数、min関数、max関数

次に、P(a) = Pr(x <= a)を計算する関数をfunction関数で作ります。

function関数でカスタム関数の作成

この関数とsapply関数を利用して、縦軸の値(CDFの値)を作ります。

sapply関数

最後にplot関数でCDFの図を描きます。

plot関数

HPIのCDF

はい。完成です。

この1から4までの作業をいっぺんにやる関数を作ってみましょう。

CDF図を作図する関数を作る

さあ、うまくいくでしょうか?HPI:Happy Planet Indexで確かめてみましょう。

cdf_plot関数

CDF図

うまくできました。

ALE:Average Liefe ExpectancyのCDFを作図してみます。

ALEのCDF

ALEのCDF

50歳未満から80歳以上までALEは分布しています。

AWE:Average Well-BeingのCDFを見てみます。

AWBのCDF

AWBのCDF

IOO:Ineqality Of OutcomesのCDFを見てみます。

IOOの

IOOのCDF

FTP:Ecological Foot PrintのCDFを見てみます。

FTPのCDF

FTPのCDF

今回は以上です。