使用逻辑回归算法对鸢尾花数据集进行二分类,判断鸢尾花的判 别。
在Python中,使用逻辑回归对鸢尾花数据集进行二分类通常是将其转化为二元问题,例如将所有不是特定类别的鸢尾花标记为非目标类别。这里我们将假设我们要区分的是山鸢尾(Iris-setosa)与其他两个类别(Iris-versicolor和Iris-virginica)。以下是使用sklearn库实现逻辑回归的一个例子:
```python import numpy as np from sklearn import datasets from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.preprocessing import LabelEncoder from sklearn.metrics import accuracy_score, confusion_matrix
加载鸢尾花数据集并转换为二分类问题
iris = datasets.load_iris()
le = LabelEncoder()
y = le.fit_transform(iris.target)
y_binary = (y != 0) * 1 # 将非山鸢尾设定为1,山鸢尾设为0
划分特征(X)和目标变量(y)
X = iris.data
划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y_binary, test_size=0.2, random_state=42)
创建逻辑回归模型
log_reg = LogisticRegression()
训练模型
log_reg.fit(X_train, y_train)
预测
y_pred = log_reg.predict(X_test)
评估模型
accuracy = accuracy_score(y_test, y_pred) conf_mat = confusion_matrix(y_test, y_pred) print(f"Accuracy: {accuracy}") print("Confusion Matrix:\n", conf_mat)
相关推荐


















