我已经用数据训练好决策树和随机森林,现在需要用输入数据,用数据预测这组数据描述的病人是否患有心脏病,请给我测试的代码。下面是我的训练过程import pandas as pd from sklearn import tree from sklearn.ensemble import RandomForestClassifier import matplotlib.pyplot as plt import numpy as np heart=pd.read_csv("D:\Anaconda1\heart.csv") heart.head() heart.info() clf_tree = tree.DecisionTreeClassifier() from sklearn.model_selection import train_test_split x = heart.drop('target',axis = 1) y = heart['target'] x_train,x_test,y_train,y_test = train_test_split(x,y,random_state=0) clf_tree.fit(x_train,y_train) print(clf_tree.score(x_train,y_train)) print(clf_tree.score(x_test,y_test)) tree.export_graphviz(clf, out_file='tree.dot') score_list=[] for i in range(10,100,10): clf_forest = RandomForestClassifier(n_estimators = i, random_state = 0) clf_forest.fit(x_train,y_train) score_list.append(clf_forest.score(x_test,y_test)) plt.plot(range(10,100,10), score_list) plt.show() print(np.argmax(score_list)) print(np.max(score_list))
时间: 2023-12-24 18:22:45 浏览: 77
好的,给您提供一份用训练好的决策树和随机森林模型进行预测的代码:
```
import pandas as pd
from sklearn import tree
from sklearn.ensemble import RandomForestClassifier
# 读入测试数据
test_data = pd.read_csv("test_data.csv")
# 加载训练好的决策树模型
clf_tree = tree.DecisionTreeClassifier()
clf_tree.load("tree_model.pkl")
# 加载训练好的随机森林模型
clf_forest = RandomForestClassifier()
clf_forest.load("forest_model.pkl")
# 预测决策树模型结果
tree_result = clf_tree.predict(test_data)
# 预测随机森林模型结果
forest_result = clf_forest.predict(test_data)
# 输出预测结果
print("决策树模型预测结果:", tree_result)
print("随机森林模型预测结果:", forest_result)
```
需要将上面的代码中的 `test_data.csv` 替换为你要预测的测试数据的文件路径,并且需要将 `tree_model.pkl` 和 `forest_model.pkl` 替换为训练好的决策树模型和随机森林模型的文件路径。
相关问题
我已经用数据训练好决策树和随机森林,现在我需要设置一组数据分别测试决策树和随机森林,预测这组数据描述的病人是否患有心脏病,请给我测试的代码。下面是我的训练过程import pandas as pd from sklearn import tree from sklearn.ensemble import RandomForestClassifier import matplotlib.pyplot as plt import numpy as np heart=pd.read_csv("D:\Anaconda1\heart.csv") heart.head() heart.info() clf_tree = tree.DecisionTreeClassifier() from sklearn.model_selection import train_test_split x = heart.drop('target',axis = 1) y = heart['target'] x_train,x_test,y_train,y_test = train_test_split(x,y,random_state=0) clf_tree.fit(x_train,y_train) print(clf_tree.score(x_train,y_train)) print(clf_tree.score(x_test,y_test)) tree.export_graphviz(clf, out_file='tree.dot') score_list=[] for i in range(10,100,10): clf_forest = RandomForestClassifier(n_estimators = i, random_state = 0) clf_forest.fit(x_train,y_train) score_list.append(clf_forest.score(x_test,y_test)) plt.plot(range(10,100,10), score_list) plt.show() print(np.argmax(score_list)) print(np.max(score_list))
好的,可以使用以下代码对决策树和随机森林进行测试:
```
# 导入测试数据
test_data = pd.read_csv("D:\Anaconda1\test_data.csv")
# 分离特征和标签
X_test = test_data.drop('target', axis=1)
y_test = test_data['target']
# 测试决策树
tree_score = clf_tree.score(X_test, y_test)
print("决策树的准确率为:", tree_score)
# 测试随机森林
forest_score = clf_forest.score(X_test, y_test)
print("随机森林的准确率为:", forest_score)
```
其中,`test_data` 是你准备用来测试的数据集, `X_test` 是测试数据的特征, `y_test` 是测试数据的标签。`tree_score` 和 `forest_score` 分别是决策树和随机森林的准确率。
你可以将这段代码添加到你的训练代码后面,就可以进行测试了。
,使用Python编写心脏病预测的代码,要求自己编写决策树和随机森林算法来实现
好的,关于心脏病预测的问题,我可以给你一些建议。
首先,你需要收集一些心脏病相关的数据,包括病人的年龄、性别、血压、胆固醇等指标,以及是否患有心脏病的标签。
然后,你可以使用Python中的scikit-learn库来实现决策树和随机森林算法。具体步骤如下:
1. 导入所需的库和数据:
```python
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier
# 读取数据
data = pd.read_csv('heart_disease.csv')
X = data.drop('heart_disease', axis=1)
y = data['heart_disease']
```
2. 划分训练集和测试集:
```python
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
3. 训练决策树模型:
```python
# 创建决策树模型并训练
dtc = DecisionTreeClassifier()
dtc.fit(X_train, y_train)
```
4. 训练随机森林模型:
```python
# 创建随机森林模型并训练
rfc = RandomForestClassifier()
rfc.fit(X_train, y_train)
```
5. 在测试集上评估模型表现:
```python
# 在测试集上评估决策树模型表现
dtc_score = dtc.score(X_test, y_test)
print('决策树模型表现:', dtc_score)
# 在测试集上评估随机森林模型表现
rfc_score = rfc.score(X_test, y_test)
print('随机森林模型表现:', rfc_score)
```
以上就是使用Python编写心脏病预测的代码,并使用决策树和随机森林算法来实现的步骤。希望对你有所帮助!
阅读全文