编辑代码

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report, confusion_matrix
import numpy as np

# 假设iris_df已正确加载
x = iris_df[['sepal length (cm)','sepal width (cm)','petal length (cm)','petal width (cm)']]
y = iris_df['target']

# 划分训练测试集
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=42)

# 创建并训练模型
model = LogisticRegression(max_iter=200)  
model.fit(x_train, y_train)

# 预测
predictions = model.predict(x_test)

# 评估模型
print(classification_report(y_test, predictions))
print('\n混淆矩阵:')
print(confusion_matrix(y_test, predictions))




# 导入必要库
from sklearn.datasets import load_iris
import pandas as pd

# 加载数据集
iris = load_iris()
iris_df = pd.DataFrame(iris.data, columns=iris.feature_names)
iris_df['target'] = iris.target

# 特征矩阵和目标向量提取(对应问题中的代码)
X = iris_df[['sepal length (cm)', 'sepal width (cm)', 
            'petal length (cm)', 'petal width (cm)']]
y = iris_df['target']

# 示例:划分训练集测试集
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)

# 示例:使用随机森林分类
from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifier()
clf.fit(X_train, y_train)
print(f"模型准确率: {clf.score(X_test, y_test):.2%}"