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

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

KaggleのTitanicのデータの分析5 - SibSpの分析、SibSpが0の人の生存確率は、34.5%, SibSpが5, 8の人の生存確率は、0%

f:id:cross_hyou:20220312081650j:plain

Photo by the blowup on Unsplash 

www.crosshyou.info

の続きです。今回は、SibSpの分析です。兄弟の数ですかね。

summary()関数でNAがあるかどうかを見てみます。

f:id:cross_hyou:20220312082155p:plain

NAは無いようです。兄弟の数ですから、整数ですよね。table()関数で度数を見てみます。

f:id:cross_hyou:20220312082434p:plain

ほとんどが0または1ですね。5人兄弟姉妹がいる人が6人、8人兄弟姉妹がいる人が9人ということは、この2つはそれぞれ同じ家族の人ですね。

trainとtestで分けてみてみましょう。

f:id:cross_hyou:20220312082805p:plain

SibSpが5, 8の人たちは、train, testの一方に固まっていなくて、両方に分かれていますね。

数だとtrainとtesuの違いがよくわからないので、比率の表にしてみます。

f:id:cross_hyou:20220312083245p:plain

比率で見ると両者、あまりかわらないように見えます。

カイ二乗検定で両者に違いがあるかどうかを検定してみます。

f:id:cross_hyou:20220312083858p:plain

p-valueは、0.5107なのでtrainとtestでSibSpの度数に有意な違いは無いようです。

それでは、SibSpごとの生存確率を見てみます。

まずは、SibSp = 0 をベースにして、sibsp1, sibsp2, sibsp3, sibsp4, sibsp5, sibsp8のダミー変数を作成します。

f:id:cross_hyou:20220312084455p:plain

続いて、lm()関数でSurvivedを被説明変数、sibsp1 ~ sibsp8を説明変数にして回帰分析をします。

f:id:cross_hyou:20220312084918p:plain

Interceptの回数が、0.34539です。これは、SibSp = 0 の人たちの生存確率を表しています。34.5%ということですね。

sibsp1の係数は0.19049ですから、SibSp = 1 の人たちの生存確率は、0.34539 + 0.19049 = 0.53588, 53.6%です。

sibsp2の係数は0.11889ですから、SibSp = 2 の人たちの生存確率は、0.34539 + 0.11889 = 0.46428, 46.4%です。

sibsp3の係数は、-0.09539ですから、SibSp = 3 の人たちの生存確率は、0.34539 - 0.09539 = 0.25, 25%です。

sibsp4の係数は、-0.17873ですから、SibSp = 4 の人たちの生存確率は、0.34539 - 0.17873 = 0.1666, 16.7%です。

sibsp5, sibsp8の係数はどちらも -0.34539です。つまりSibSp = 5と8の人たちの生存確率は、0.34539 - 0.34539 = 0%です。

SibSp = 0 の人を基準にすると、SibSp = 1, 2の人は生存確率が高く、それよりも兄弟姉妹の数が増えると生存確率が低くなっているということですね。

今回は以上です。

次は

 

www.crosshyou.info

です。

初めから読むには、

 

www.crosshyou.info

です。