R語言練習-利用決策樹模型分析泰坦尼克生還率(1)
R語言練習-利用決策樹模型分析泰坦尼克生還率
一、資料預處理
列名 | 含義 |
---|---|
pclass | 將1/2/3等艙分別儲存在1/2/3 |
survived | 是否生還 |
name | 姓名 |
sex | 性別 |
age | 年齡 |
sibsp | 同城的兄弟或者配偶數 |
parch | 同城的父母或者子女數 |
ticket | 票號 |
fare | 票價 |
cabin | 艙號 |
embarked | 登陸地:C(Cherbourg,瑟堡),Q(Queenstown,皇后鎮),S(Southampton,南安普頓) |
1.讀入資料,將不適合的列刪除,保留適合進行建模的列。
*> #讀入資料
titanic<-read.csv(“E:/資料分析/程式設計/R/file/資料/titanic3.csv”)
去掉後3列,不適合建模
titanic<-titanic[,!names(titanic)%in%c(“body”,”boat”,”home.dest”)]
str(titanic)*
2.轉換每列的資料型別轉換成適合的資料型別,例如pclass現在是int型,需要轉換成字元型
titanic
pclass<−as.factor(titani pclass)c
titanicname<−as.character(titanic name)
titanicticket<−as.character(titanic ticket)
titaniccabin<−as.character(titanic cabin)
titanicsurvived<−factor(titanic survived,levels=c(0,1),labels=c(“dead”,”survived”))
str(titanic) #檢視型別將embarked中的“”(空字元)異常值修改為NA
levels(titanic
e embarked)[1]<-NAmbarked)levels(titanic
table(titanic$embarked,useNA=”always”)將cabin中的空字串更換為NA
titanic
cabin<−ifelse(titanic cabin==”“,NA,titanic$cabin)
3.分離資料,把資料分成測試資料和訓練資料
library(caret)
set.seed(137)
test_idx<-createDataPartition(titanicsurvived,p=0.1) Resample1
titanic.test<-titanic[test_idx,]
titanic.train<-titanic[-test_idx,]
4.用caret包中的createFolds()進行分割,分成10層交叉資料
create_ten_fold_cv<-function(){
+ set.seed(137)
+ lapply(createFolds(titanic.train$survived,k=10),function(idx){
+ return(list(train=titanic.train[-idx,],
+ validation=titanic.train[idx,]))
+ })
+ }
相關推薦
R語言練習-利用決策樹模型分析泰坦尼克生還率(1)
R語言練習-利用決策樹模型分析泰坦尼克生還率 一、資料預處理 列名 含義 pclass 將1/2/3等艙分別儲存在1/2/3 survived 是否生還 name 姓名 sex 性別
大資料入門——使用決策樹模型預測泰坦尼克號乘客的生還情況
#資料查驗 import pandas as pd titanic=pd.read_csv('http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataS
機器學習之路: python 決策樹分類 預測泰坦尼克號乘客是否幸存
現象 info n) 指標 ssi 直觀 learn 保持 afr 使用python3 學習了決策樹分類器的api 涉及到 特征的提取,數據類型保留,分類類型抽取出來新的類型 需要網上下載數據集,我把他們下載到了本地, 可以到我的git下載代碼和數據集: https
【SciKit-Learn學習筆記】4:決策樹擬合泰坦尼克號資料集並提交到Kaggle
學習《scikit-learn機器學習》時的一些實踐。 決策樹擬合泰坦尼克號資料集 這裡用繪製引數-score曲線的方式去直觀看出模型引數對模型得分的影響,作者使用了GridSearchCV來自動做k-fold交叉驗證,並且能在多組模型引數中找到最優的一組和最優值(用平均s
Python機器學習入門1.8《使用整合模型預測泰坦尼克號乘客的生還情況預測》
# -*- coding: utf-8 -*- """ Created on Fri Oct 19 08:11:26 2018 @author: asus """ import pandas as pd titanic=pd.read_csv('http://biosta
python 分析泰坦尼克號生還率
泰坦尼克號資料集,是kaggle(Titanic: Machine Learning from Disaster)上入門機器學習(ML)的一個好的可選資料集,當然,也是不錯的練習資料分析的資料集。對 python ,在資料分析方面,作為一柄利器,涵蓋了「資料獲取→資料處理→資
Kaggle專案案例分析 泰坦尼克號生存預測
一、資料來源及說明 1.1 資料來源 來自Kaggle的非常經典資料專案 Titanic:Machine Learning1.2 資料說明 資料包含train.csv 和test.csv 兩個檔案資料集,一個訓練用,一個測試用。train文件資料是用來分析和建模,包含泰
R語言學習(三)——決策樹分類
分類 分類(Classification)任務就是通過學習獲得一個目標函式(Target Function)f, 將每個屬性集x對映到一個預先定義好的類標號y。 分類任務的輸入資料是記錄的集合,每條記錄也稱為例項或者樣例。用元組(X,y)表示,其中,X 是屬性集合,y是一個特殊的
R語言泰坦尼克號隨機森林模型案例資料分析
採取大量單獨不完美的模型,他們的一次性錯誤可能不會由其他人做出。如果我們對所有這些模型的結果進行平均,我們有時可以從它們的組合中找到比任何單個部分更好的模型。這就是整體模型的工作方式,他們培養了許多不同的模型,並讓他們的結果在整個團隊中得到平均或投票。 我們現在很清楚決策樹
【大資料部落】r、 weka從決策樹模型看員工為什麼離職?
馬雲說:“員工離職的原因總是隻有兩個:錢,沒有到位;心委屈了。” 現在很多老闆都抱怨說,年輕人的流動率太高了,員工覺得老闆的錢太少了,最後還是多指責。 為什麼我們最好和最有經驗的員工過早離職? 到底如何解決這個困境? 拓端資料tecdat使用資料分析員工離開的原
R語言泊松Poisson迴歸模型分析案例
這個問題涉及馬蹄蟹研究的資料。研究中的每隻雌性馬蹄蟹都有一隻雄性螃蟹貼在她的巢穴中。這項研究調查了影響雌蟹是否有其他男性居住在她附近的因素。被認為影響這一點的解釋變數包括雌蟹的顏色(C),脊椎狀況(S),體重(Wt)和甲殼寬度(W)。資料檔案:crab.txt。我們將首先擬合
R語言開發之決策樹瞭解下
決策樹是以樹的形式表示選擇及其結果的圖形,圖中的節點表示事件或選擇,並且圖形的邊緣表示決策規則或條件。 它主要用於使用R的機器學習和資料探勘應用程式。 使用決策的例子我們可以看下。 將接收的郵件預測是否為垃圾郵件,根據這些資訊中的因素,預測腫瘤是癌症或預測貸款作為良好或
泰坦尼克生存概率分析,決策樹的應用
決策樹(decision tree)是一個樹結構(可以是二叉樹或非二叉樹)。其每個非葉節點表示一個特徵屬性上的測試,每個分支代表這個特徵屬性在某個值域上的輸出,而每個葉節點存放一個類別。使用決策樹進行決策的過程就是從根節點開始,測試待分類項中相應的特徵屬性,並按照其值選擇輸出分支,直到到達葉子節點,
(決策樹)泰坦尼克號生還者簡單預測
import pandas as pd titanic=pd.read_csv('http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic.txt') X=titanic[['pclass','age','sex']] y=
機器學習--決策樹及泰坦尼克號生存預測
決策樹是一個類似於流程圖的樹結構,分支節點表示對一個特徵進行測試,根據測試結果進行分類,樹葉節點代表一個類別。 要判斷從哪個特徵進行分裂,就要對資訊進行量化,量化的方式有: ID3: 資訊增益 條件熵: 其中pi=P(X=xi),X,Y代表了兩個事件,而它們之間有
利用python對泰坦尼克號資料集進行分析
一、資料來源 資料集來自於Kaggle。Kaggle是一個數據分析建模的應用競賽平臺。當然也可以從其它地方下。 二、相關工具 2.1 Python 3.5.2 2.2 Anaconda 3 三、牛刀小試 3.1 匯入訓練資料集 import pandas as
【Kaggle筆記】預測泰坦尼克號乘客生還情況(決策樹)
資料集 程式碼 # -*- coding: utf-8 -*- """ 泰坦尼克號乘客生還情況預測 模型 決策樹 """ # 匯入pandas用於資料分析。 import panda
決策樹-泰坦尼克號生還預測
row.names pclass survived \ 0 1 1st 1 1 2 1st 0 2 3 1st 0 3 4 1st 0 4
機器學習:決策樹cart演算法在分類與迴歸的應用(上)
#include #include #include #include #include #include #include #include #include #include #include using namespace std; //置信水平取0.95時的卡方表 const double CHI
《利用python進行資料分析》第十章 時間序列(一)
stamp = ts.index[2] print ts[stamp],'\n' #還有更方便的用法,傳入可以被解釋為日期的字串 print ts['1/10/2011'] print ts['20110110'],'\n' #對於較長的時間序列,只需傳入“年”或“年月”即可輕鬆選取資料切片 long_ts