都到决策树了,尽管昨天证明这个方案不太适用,但学习了就作一次记录吧。
一,代码
from openpyxl.styles.alignment import horizontal_alignments, vertical_aligments
from sklearn import metrics
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.metrics import confusion_matrix
from sklearn.datasets import load_iris
def cm_plot(y, yp):
cm = confusion_matrix(y, yp)
plt.matshow(cm, cmap= plt.cm.Blues)
plt.colorbar()
for x in range(len(cm)):
for y in range(len(cm)):
plt.annotate(cm[x, y], xy = (y, x), horizontal_alignments='center',
vertical_aligments='center')
plt.ylabel('True label')
plt.xlabel('Predicted label')
return plt
iris = load_iris()
X = iris.data
y = iris.target
model = RandomForestClassifier(n_estimators=200, criterion='gini', random_state=42)
model.fit(X, y)
importances = model.feature_importances_
for feature_name, importance in zip(iris.feature_names, importances):
print(f'{feature_name}: {importance}')
二,输出

image.png