經典案例 鐵達尼號

2021-10-22 06:45:31 字數 1559 閱讀 2977

import pandas as pd

import graphviz

#1. 讀取資料,獲取特徵值:

data = pd.read_excel(r'tietan.xls'

)print

(data)

#2. pclass, age, ***

feature = data.loc[:,

['pclass'

,'age'

,'***']]

print

(feature.info())

#3. 填充空值: age: 找不到準確值:

feature.fillna(

, inplace=

true

)#4. 將特徵中的類別屬性進行轉化, one-hot 編碼:

x = feature.to_dict(orient=

'records'

)print

(x)#5. 批量啞變數處理的方法:

from sklearn.feature_extraction import dictvectorizer

dic = dictvectorizer(sparse=

false

)# sparse=false 表示返回陣列型別,否則返回詞頻向量化型別

x = dic.fit_transform(x)

# x: #對x 進行啞變數轉換,返回的陣列型別;

feature_name = dic.get_feature_names(

)# 返回每列的表頭

# print(feature_name)

# print(x)

#6. 分割訓練集與測試集:

y = data[

'survived'

]from sklearn.model_selection import train_test_split

x_train, x_test, y_train, y_test = train_test_split(x, y, train_size=

0.8)

#7.模型訓練:

from sklearn.tree import decisiontreeclassifier

# 例項化:

dc = decisiontreeclassifier(criterion=

'entropy'

, max_depth=5)

# 訓練:

dc.fit(x_train, y_train)

# **:

dc.predict(x_test)

# 準確度:

print

(dc.score(x_test, y_test)

)#8. 匯出模型:

from sklearn import tree

tree.export_graphviz(dc,

'tree.dot'

)#9. 視覺化

a = graphviz.source(

'tree.dot'

)print

(a)

用Python分析經典鐵達尼號專案

一共有891個樣本 survived的標籤是通過0或1來區分 大概38 的樣本是survived 大多數乘客 76 沒有與父母或是孩子一起旅行 大約30 的乘客有親屬和 或配偶一起登船 票價的差別非常大,少量的乘客 1 付了高達 512的費用 很少的乘客 1 年紀在64 80之間 import pa...

ML 決策樹 鐵達尼號

1.資料載入 2.資料特徵 3.資料預處理 均值填充,最大值填充 4.特徵選擇 5.構造id3樹 6.決策樹訓練 7.決策樹 8.準確率輸出 import pandas as pd from sklearn.feature extraction import dictvectorizer from ...

kaggle泰坦尼克比賽總結

泰坦尼克資料探勘比賽是kaggle上的新手入門賽,作為乙個基礎還沒打好的菜雞強行敲了一波 但是大部分還是跟著別人的思路,看著別人的 寫的。因此 就不放了,放了跟搬運沒啥區別。單純總結一下學習感悟吧。做資料探勘的第一步就是讀取資料之後進行分析和預處理。所要用到的python 庫有pandas,nump...