Python數據挖掘—分類—決策樹


概念

決策樹(Decision Tree):它通過對訓練樣本的學習,並建立分類規則,然后依據分類,對新樣本數據進行分類預測,屬於有監督學習

優點:決策樹易於理解和實現,決策樹可處理數值型和非數值型數據

 

步驟

  • 導入數據,確定虛擬變量的列,然后遍歷這些列,將這些類的數據轉換為分類型數據,再通過get_dummies()方法獲取虛擬變量

 1 import pandas
 2 
 3 data=pandas.read_csv(
 4      "C:\\Users\\Jw\\Desktop\\python_work\\Python數據挖掘實戰課程課件\\5.3\\data.csv")
 5 
 6 dummyColumns=["Gender", "ParentEncouragement"]
 7 
 8 for column in dummyColumns:
 9     data[column]=data[column].astype("category")
10     
11 
12 dummiesData=pandas.get_dummies(
13         data,
14         columns=dummyColumns,
15         prefix=dummyColumns,
16         prefix_sep="=",
17         drop_first=True)
18 
19 dummiesData.columns
  • 確定特征數據和目標數據

fData=dummiesData[[
     'ParentIncome', 'IQ', 'Gender=Male',
    'ParentEncouragement=Not Encouraged']]
    
tData=dummiesData["CollegePlans"]

我注意到:fData即是特征數據為一個DataFrame數據框,而tData則是一個Series

  • 導入DecisionTreeClassifier類,然后通過cross_val_score進行評分

1 from sklearn.tree import DecisionTreeClassifier
2 
3 dtModel=DecisionTreeClassifier(max_leaf_nodes=8)   #該處為調優
4 
5 from sklearn.model_selection import cross_val_score
6 
7 cross_val_score(
8     dtModel,
9     fData,tData,cv=10)

dtModel=DecisionTreeClassifier(max_leaf_nodes=8) 此處操作為調優操作,隨機森林在不調優前普遍高於決策樹模型

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM