X = df.drop('Outcome', axis=1) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=35 / 769, random_state=0) classifier=RandomForestClassifier(criterion='entropy', n_estimators=1000, max_depth=None, min_samples_split=10,min_weight_fraction_leaf=0.02) classifier.fit(X_train, y_train) y_pred = classifier.predict(X_test) print('随机森林模型') print(confusion_matrix(y_test, y_pred)) print(classification_report(y_test, y_pred)) print(accuracy_score(y_test, y_pred)) y_ = np.array(y_test) print('随机森林预测结果:', classifier.predict(X_test)) print('原始数据真实结果: ', y_) print('模型得分:{:.2f}'.format(classifier.score(X_test, y_test))) modelscore = format(classifier.score(X_test, y_test)) if float(modelscore) >= 0.88: print("模型预测准确率较高,适合用来预测糖尿病") else: print("模型预测准确率较低,不宜用来预测糖尿病")画随机森林图
时间: 2023-12-24 14:22:07 浏览: 146
2-Control.rar_control valve _decide_heater_site:www.pudn.com_val
对于随机森林模型,通常不会画出决策树等图形,因为随机森林是由多个决策树组成的集成模型,每个决策树的结果都是相互独立的,难以以一张图形的形式展示。
不过,可以通过特征重要性图来展示随机森林模型中各个特征的重要性程度,代码如下:
```
import matplotlib.pyplot as plt
feature_importances = classifier.feature_importances_
features = df.columns[:-1]
indices = np.argsort(feature_importances)[::-1]
plt.figure(figsize=(10, 6))
plt.title("Feature importances")
plt.bar(range(len(feature_importances)), feature_importances[indices])
plt.xticks(range(len(feature_importances)), features[indices], rotation=90)
plt.show()
```
这段代码会绘制出特征重要性图,横坐标为各个特征,纵坐标为特征重要性程度。这可以帮助我们了解哪些特征对于模型的预测结果更为重要。
阅读全文