生成鸢尾花数据集10折交叉验证法的代码
时间: 2024-05-09 19:18:56 浏览: 72
以下是使用Python中sklearn库的KFold函数实现的鸢尾花数据集10折交叉验证法的代码:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import KFold
from sklearn.linear_model import LogisticRegression
# 加载鸢尾花数据集
iris = load_iris()
# 将特征和标签分别存储在X和y中
X = iris.data
y = iris.target
# 定义模型
model = LogisticRegression()
# 定义10折交叉验证法
kf = KFold(n_splits=10, shuffle=True, random_state=1)
# 定义变量存储平均准确率
accuracy = 0
# 使用10折交叉验证法进行模型训练和预测
for train_index, test_index in kf.split(X):
# 将数据集分为训练集和测试集
X_train, X_test = X[train_index], X[test_index]
y_train, y_test = y[train_index], y[test_index]
# 训练模型
model.fit(X_train, y_train)
# 预测测试集的结果
y_pred = model.predict(X_test)
# 计算准确率
accuracy += model.score(X_test, y_test)
# 输出平均准确率
print("平均准确率:", accuracy/10)
```
注:以上代码仅作演示用途,实际应用中需要根据具体情况进行调整和优化。
阅读全文