標籤:

Kaggle項目之泰坦尼克號生存概率分析

Kaggle項目之泰坦尼克號生存概率分析

來自專欄猴子聊數據分析4 人贊了文章

*項目背景:

電影《泰坦尼克號》改編自一個真實故事。1912年4月15日,這艘號稱「永不沉沒」的泰坦尼克號在首航期間,撞上冰山後沉沒,船上的2224名乘客和機組人員,其中只有772人存活下來,生還率只有32%。 這一聳人聽聞的悲劇震撼了國際社會,並導致了更好的船舶安全條例。

生存概率分析報告:

附分析過程及代碼如下:

1.提出問題:

一些人比其他人更有可能生存,比如婦女,兒童和上層階級。什麼樣的人在泰坦尼克號中更容易存活?

2.理解數據:

2.1.採集數據:

數據來源於kaggle網站Titanic項目,如下鏈接可下載數據。

Titanic: Machine Learning from Disaster?

www.kaggle.com

2.2.導入數據:

機器學習的一個技巧就是為了方便同時對訓練數據和測試數據進行清洗,我們需要將兩個數據集合併。

2.3.查看數據集信息:

數據集由12個變數構成,12個變數含義如下:

數據總共有1309行,Survived是標籤,用作機器學習預測,無需處理。數據類型列:年齡(Age)、船艙號(Cabin)裡面有缺失數據:

  • 年齡(Age)裡面數據總數是1046條,缺失了263,缺失率20%;
  • 船票價格(Fare)裡面數據總數是1308條,缺失了1條數據字元串列;
  • 登船港口(Embarked)裡面數據總數是1307,只缺失了2條數據,缺失較少;
  • 船艙號(Cabin)裡面數據總數是295,缺失了1014,缺失率77.5%,缺失較大。

3.數據清洗:

3.1.數據預處理:缺失數據處理

對於數據類型,處理缺失值最簡單的方法就是用平均數來填充缺失值。

登船港口缺失2個值,將其填充為出現次數最多的值。船艙號(Cabin)缺失指較多,將其填充為』U『。

3.2.特徵提取:

3.2.1.數據分類

對於不同數據類型的特徵提取方法不同,對於數值類型的數據可直接使用,對於日期數據需轉換為單獨的年、月、日,對於分類數據使用One-hot編碼方法用數字代替類別。

1.數值類型:

乘客編號(PassengerId),年齡(Age),船票價格(Fare),同代直系親屬人數(SibSp),不同代直系親屬人數(Parch)

2.時間序列:

3.分類數據:

1)有直接類別的

乘客性別(Sex):男性male,女性female。將性別的值映射為數值,男(male)對應數值1,女(female)對應數值0

登船港口(Embarked):出發地點S=英國南安普頓Southampton,途徑地點1:C=法國 瑟堡市Cherbourg,出發地點2:Q=愛爾蘭 昆士敦Queenstown

客艙等級(Pclass):1=1等艙,2=2等艙,3=3等艙

2)字元串類型:可能從這裡面提取出特徵來,也歸到分類數據中

乘客姓名(Name)在乘客名字中,有一個非常顯著的特點:乘客頭銜每個名字當中都包含了具體的稱謂或者說是頭銜,將這部分信息提取出來後可以作為非常有用一個新變數,可以幫助我們進行預測。

客艙號(Cabin)首字母是客艙的類別

建立家庭人數和家庭類別

3.3.特徵選擇:

相關性矩陣

特徵選擇

4.構建模型

5.評估模型

6.繪圖

推薦閱讀:

Kaggle和泰坦尼克號預測
Kaggle泰坦尼克號案例
機器學習(入門練習):Kaggle和泰坦尼克號預測
Kaggle 入門 1.1——A Journey through Titanic

TAG:Kaggle |