国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

python sklearn:教你如何畫出決策書,并保存為PDF的實現過程

89542767 / 712人閱讀

  python sklearn:教你如何畫出決策書,并保存為PDF的實現過程

  這篇文章主要介紹了python sklearn畫出決策樹并保存為PDF的實現過程,這篇文章具有很高的參考價值,希望各位讀者可以認真仔細的閱讀。

  利用sklearn畫出決策樹并保存為PDF

  下載Graphviz

  進入官網下載并安裝:

  https://graphviz.gitlab.io/_pages/Download/Download_windows.html

  并將下列路徑配置為環境變量:

  D:softwareGraphvizbin

  在cmd中測試:

dot -version

  1

       python代碼

import numpy as np
import pandas as pd
from sklearn import tree
import graphviz
# x,y是sklearn中需要擬合的數據
x = np.array(exam_train)
y = np.array(classes_train)
clf = tree.DecisionTreeClassifier(criterion='entropy', class_weight='balanced', max_depth=25)
clf = clf.fit(x, y)
dot_data = tree.export_graphviz(clf, out_file=None, feature_names=None, filled=True, rounded=True)  # 重要參數可定制
graph = graphviz.Source(dot_data)
graph.render(view=True, format="pdf", filename="decisiontree_pdf")

    可以生成一張賊帥的決策樹PDF

1

    python sklearn決策樹運用

  數據形式(tree.csv)

age look income orderly target
older ugly low yes no
young ugly high no no
young handsome low no no
young handsome high yes yes
young handsome medium yes yes
young handsome medium no no

  2

      python源代碼:

# -*- coding:utf-8*-
# 將字典 轉化為 sklearn 用的數據形式 數據型 矩陣
from sklearn.feature_extraction import DictVectorizer
import csv
from sklearn import preprocessing
from sklearn import tree

allElectronicsData = open('c:/pic/data/tree.csv','rb')
reader = csv.reader(allElectronicsData)
header = reader.next()
# print header
## 數據預處理
featureList = []
labelList = []
for row in reader:
    # print row[-1]
    labelList.append(row[-1])
    # 下面這幾步的目的是為了讓特征值轉化成一種字典的形式,就可以調用sk-learn里面的DictVectorizer,直接將特征的類別值轉化成0,1值
    rowDict = {}
    for i in range(1, len(row) - 1):
        rowDict[header[i]] = row[i]
    featureList.append(rowDict)

for each in featureList:
    print each

# Vectorize features
vec = DictVectorizer()
dummyX = vec.fit_transform(featureList).toarray()
print("dummyX:"+str(dummyX))
print(vec.get_feature_names())

# label的轉化,直接用preprocessing的LabelBinarizer方法
lb = preprocessing.LabelBinarizer()
dummyY = lb.fit_transform(labelList)
print("dummyY:"+str(dummyY))
print("labelList:"+str(labelList))

#criterion是選擇決策樹節點的 標準 ,這里是按照“熵”為標準,即ID3算法;默認標準是gini index,即CART算法。
clf = tree.DecisionTreeClassifier()
clf = clf.fit(dummyX,dummyY)
print("clf:"+str(clf))
# 導入相關函數,可視化決策樹
# 導出的結果是一個dot文件(在系統默認路勁),需要安裝Graphviz才能將它住哪華為PDF或png格式
# 輸出的dot文件可以使用graphvize軟件轉為PDF,graphvize安裝目錄中的bin目錄放入到環境變量的Path中
# 使用如下命令
#cmd
# dot -Tpdf  c:/tree.dot -o c:/tree.pdf
#下載地址:http://www.graphviz.org/Download_windows.php
#生成dot文件
with open("c:/tree.dot",'w') as f:
    f = tree.export_graphviz(clf, feature_names= vec.get_feature_names(),out_file= f)

以上就是小編給大家的詳細解答了,希望可以為各位讀者帶來幫助

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/127554.html

相關文章

  • 分類算法之決策樹(應用篇)

    摘要:起步在理論篇我們介紹了決策樹的構建和一些關于熵的計算方法,這篇文章將根據一個例子,用代碼上來實現決策樹。轉化文件至可視化決策樹的命令得到一個文件,打開可以看到決策樹附錄本次應用的全部代碼向量化向量化構造決策樹保存模型測試數據 起步 在理論篇我們介紹了決策樹的構建和一些關于熵的計算方法,這篇文章將根據一個例子,用代碼上來實現決策樹。 實驗環境 操作系統: win10 64 編程語言: ...

    luoyibu 評論0 收藏0
  • 第7期 Datawhale 組隊學習計劃

    馬上就要開始啦這次共組織15個組隊學習 涵蓋了AI領域從理論知識到動手實踐的內容 按照下面給出的最完備學習路線分類 難度系數分為低、中、高三檔 可以按照需要參加 - 學習路線 - showImg(https://segmentfault.com/img/remote/1460000019082128); showImg(https://segmentfault.com/img/remote/...

    dinfer 評論0 收藏0
  • 機器學習--決策樹--dot轉存pdf

    摘要:決策樹分支轉存寫代碼的方法今天是周日,我還在倒騰決策樹,然后發現了一個不用裝軟件也能倒的方法,而且更簡單。剛開始看視頻的時候是看的的視頻,講的真差,太模糊了,不適合我。 決策樹分支dot轉存pdf 1、寫代碼的方法 今天是周日,我還在倒騰決策樹,然后發現了一個不用裝軟件也能倒pdf的方法,而且更簡單。參照了這個中文的文檔實現:http://sklearn.apachecn.org/c....

    Bryan 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<