日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

用数据分析看泰坦尼克号

發(fā)布時(shí)間:2023/12/18 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用数据分析看泰坦尼克号 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作為R語(yǔ)言的初學(xué)者,你是否也曾覺(jué)得看書看教程覺(jué)得so easy,但到了實(shí)際操作卻無(wú)從下手了呢?沒(méi)(hu)關(guān)(you)系(ni)……那都是假的,哈哈哈,好啦,我們還是多多實(shí)戰(zhàn)才是硬道理。

本文引用的數(shù)據(jù)集 - - Titanic Machine Learning from Disaster(被譽(yù)為五大最適合數(shù)據(jù)分析練手項(xiàng)目之一)就非常適合我們進(jìn)行練手,當(dāng)然我們接下來(lái)要講的并不是“you jump, I jump”的感人故事,而是“you dead I survived”的分析故事,那么我們就要看看到底怎樣的乘客才能成為幸運(yùn)女神的寵兒呢?

1. 讀取數(shù)據(jù)

訓(xùn)練集train與測(cè)試集test有11變量是相同的,而唯一不同的地方是test里面沒(méi)有Survived變量,為了方便接下來(lái)的數(shù)據(jù)處理,我們將兩數(shù)據(jù)集進(jìn)行合并。

2. 加載所需程序包

  • library(dplyr)
  • library(stringr)
  • library(VIM)
  • library(mice)
  • library(ggplot2)
  • library(caret)
  • library(randomForest)

3. 缺失值探索

合并后的full數(shù)據(jù)集里Survived變量含有481個(gè)缺失值(test集里不含有Survived變量,因此合并后使得full集有481個(gè)缺失值),Age變量有263個(gè)缺失值(多重插補(bǔ)法處理),Fare變量有1個(gè)缺失值(均值填補(bǔ)),Embarked變量有2個(gè)缺失值(眾數(shù)填補(bǔ)),Cabin變量含有1014個(gè)缺失值(缺失值太多,刪除處理)。

4. 缺失值處理

我們觀察到Age變量的缺失值高達(dá)263個(gè),用均值替代或者刪除都會(huì)對(duì)結(jié)果產(chǎn)生較大的影響,因此我們將通過(guò)mice包對(duì)Age變量的缺失值進(jìn)行插補(bǔ),結(jié)果如上圖所示,插補(bǔ)后Age均值為29.57歲,最小的為0.17歲,最老的為80歲。

對(duì)Embarked變量和Fare變量的缺失值進(jìn)行填補(bǔ),因?yàn)橹挥袃蓚€(gè)和1個(gè)的缺失值,因此我們考慮用眾數(shù)(Embarked變量為chr)和均值(Fare變量為int)的方式直接填補(bǔ)。Embarked變量的眾數(shù)為S,因此直接用S替代缺失值,結(jié)果如上圖所示。Fare變量在用均值填補(bǔ)時(shí),要注意的一點(diǎn)是在進(jìn)行均值處理是時(shí),”na.rm = TRUE”不能忘,不然得出來(lái)的均值會(huì)是na值。最后我們用summary看一下處理過(guò)后的數(shù)據(jù),除了Survived變量的481個(gè)缺失值外,其他的變量都漂漂亮亮的了,當(dāng)然Cabin變量的1014個(gè)缺失值并沒(méi)有進(jìn)行處理,因?yàn)榇龝?huì)我們會(huì)直接刪掉它,結(jié)果如下圖所示。

5. 特征值選取與描述性分析

  • Title VS Survived

Title變量是從Name變量中提取出來(lái)的,因?yàn)槲覀冇^察到Name變量除了中間的稱呼外,沒(méi)有太多的共同點(diǎn),對(duì)分析沒(méi)有太多價(jià)值,因此將稱呼提取出來(lái)進(jìn)行分析。結(jié)果如下圖所示,可以發(fā)現(xiàn)不同的Title的幸存率還是有很大差距。


  • Pclass,Sex,Pclass&Sex VS Survived

Pclass變量對(duì)幸存率的影響還是挺大的,一等艙和二等艙的幸存率挺高的,而三等艙的死亡率卻高達(dá) 75 %,由此我們不得不說(shuō)“天下武功,唯富不破”,我們還是要努力賺錢啊!

Sex變量對(duì)幸存率的影響就不用說(shuō)太多了,女士?jī)?yōu)先,因此我們可以看到女性的死亡率只有25%左右,而男性的死亡率卻高達(dá)75%。

分析完P(guān)class變量與Sex變量對(duì)幸存率的影響,小文突發(fā)奇想,會(huì)不會(huì)幸存率比較高的女性都在一二等艙呢?因此將Pclass與Sex進(jìn)行合并分析,結(jié)果還是很令人滿意的,一二等艙的女士幸存率都接近100%,連死亡率較高的三等艙的女士生存率也接近50%。

  • Fare VS Survived

(a)圖是Fare變量的分布,可以看到大部分人的票價(jià)都在100以下,其中還有很大一部分是免費(fèi)上船的;(b)圖是Fare變量對(duì)幸存率的影響,可以看到票價(jià)高的乘客幸存率也較高,這與上面Pclass對(duì)幸存率的影響趨勢(shì)一致。

  • Age VS Survived

Age變量的分布比較廣,由 0歲到80歲不等,直接分析沒(méi)太大意義,因此將其分為未成年人與成年人兩組進(jìn)行統(tǒng)計(jì)分析。結(jié)果表明,未成年人的幸存率比成年人的高。

  • Familysize(FS)VS Survived

一開(kāi)始小文對(duì)數(shù)據(jù)集中的SibSp變量與Parch變量搞不清楚,怒小文的英語(yǔ)水平有限,查看了字典之后才發(fā)現(xiàn)原來(lái)是兄弟姐妹老婆孩子的意思,那好辦,我們建立一個(gè)新的變量,命名為Fsize,Fsize = SibSp + Parch + 1,并將家庭的人數(shù)分為單身,小家庭,大家庭進(jìn)行分組統(tǒng)計(jì)分析。結(jié)果表明,家庭人數(shù)對(duì)幸存率的影響還是比較明顯的。

  • Embarked VS Survived

6. 建模

通過(guò)上述的特征值提取與描述性分析,我們知道Title,Pclass,Sex,PS,FS,AG,Fare,Emarked變量對(duì)幸存率的影響還是比較明顯的,因此在建模預(yù)測(cè)之前,先用randomForest進(jìn)行特征變量分析,看看其中哪些變量影響力更大。(在特征變量分析之前,需將所有的變量轉(zhuǎn)化為因子變量,不然會(huì)出錯(cuò))

特征變量提取之后,分別用樸素貝葉斯算法與隨機(jī)森林算法對(duì)測(cè)試集進(jìn)行預(yù)測(cè),結(jié)果表明,樸素貝葉斯分類器的正確率為98.80%,在418個(gè)測(cè)試集中只有5個(gè)乘客預(yù)測(cè)錯(cuò)誤,分別是兩個(gè)未幸存者錯(cuò)誤歸類到幸存者當(dāng)中,3個(gè)幸存者錯(cuò)誤歸類到未幸存者中;而隨機(jī)森林分類器的預(yù)測(cè)正確率比樸素貝葉斯要低一點(diǎn)點(diǎn),為97.61%,有10個(gè)乘客預(yù)測(cè)錯(cuò)誤,其中有4個(gè)未幸存者錯(cuò)誤歸類到幸存者當(dāng)中,6個(gè)幸存者錯(cuò)誤歸類到未幸存者中。

總體而言兩個(gè)模型表現(xiàn)得還不錯(cuò),有興趣的讀者可以繼續(xù)探討各種變量之間的關(guān)系,塑造更多有意思的變量組合,提高正確率,不說(shuō)了,小文要趕緊把結(jié)果上傳到kaggle,看看能不能排得上號(hào)……

總結(jié)

以上是生活随笔為你收集整理的用数据分析看泰坦尼克号的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。