Decision Tree AttributeError: module 'sklearn.tree' has no attribute 'plot_tree' Error in Jupyter Notebook
Decision Tree AttributeError: module 'sklearn.tree' has no attribute 'plot_tree' Error in Jupyter Notebook
我想为我的数据可视化显示决策树图。但是控制台出现错误。
AttributeError: module 'sklearn.tree' has no attribute 'plot_tree'
虽然我通过!pip install -U scikit-learn
和!pip install --upgrade sklearn
安装了额外的模块,但无法解决错误。
我该如何解决这个问题?
下面是我的代码
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn.model_selection import train_test_split
# from sklearn.tree import DecisionTreeClassifier
from sklearn import tree
data = pd.read_csv("files/data.csv")
data.drop(["id","Unnamed: 32"],axis=1,inplace=True)
data.diagnosis = [1 if each == "M" else 0 for each in data.diagnosis]
y = data["diagnosis"].values
x_data = data.drop(["diagnosis"],axis=1)
x = (x_data - np.min(x_data))/(np.max(x_data)-np.min(x_data))
x_train, x_test, y_train, y_test = train_test_split(x,y,test_size = 0.3,random_state=1)
dt = DecisionTreeClassifier()
dt.fit(x_train,y_train)
print("score: ", dt.score(x_test,y_test))
tree.plot_tree(dt,
feature_names = data.columns,
rounded = True,
filled = True,
class_names = ["diagnosis"],
impurity = True)
这是我的答案。
更新 Anaconda Navigator 中定义的所有包后,我编写的代码片段可以完美运行。
我想为我的数据可视化显示决策树图。但是控制台出现错误。
AttributeError: module 'sklearn.tree' has no attribute 'plot_tree'
虽然我通过!pip install -U scikit-learn
和!pip install --upgrade sklearn
安装了额外的模块,但无法解决错误。
我该如何解决这个问题?
下面是我的代码
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn.model_selection import train_test_split
# from sklearn.tree import DecisionTreeClassifier
from sklearn import tree
data = pd.read_csv("files/data.csv")
data.drop(["id","Unnamed: 32"],axis=1,inplace=True)
data.diagnosis = [1 if each == "M" else 0 for each in data.diagnosis]
y = data["diagnosis"].values
x_data = data.drop(["diagnosis"],axis=1)
x = (x_data - np.min(x_data))/(np.max(x_data)-np.min(x_data))
x_train, x_test, y_train, y_test = train_test_split(x,y,test_size = 0.3,random_state=1)
dt = DecisionTreeClassifier()
dt.fit(x_train,y_train)
print("score: ", dt.score(x_test,y_test))
tree.plot_tree(dt,
feature_names = data.columns,
rounded = True,
filled = True,
class_names = ["diagnosis"],
impurity = True)
这是我的答案。
更新 Anaconda Navigator 中定义的所有包后,我编写的代码片段可以完美运行。