鸢尾花数据集多分类代码
时间: 2024-10-08 19:13:16 浏览: 36
鸢尾花数据集是一个经典的机器学习入门案例,它包含了三种不同种类的鸢尾花(Setosa、Versicolour和Virginica)的数据样本。在Python中,我们可以使用scikit-learn库来进行多分类,例如用KNN(K-近邻算法)、SVM(支持向量机)或决策树等方法。这里是一个简单的使用SVM进行多分类的例子:
```python
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import classification_report
# 加载鸢尾花数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 数据预处理(归一化)
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)
# 创建SVM模型并训练
model = SVC(kernel='linear') # 或者尝试其他kernel如'rbf'
model.fit(X_train, y_train)
# 预测
y_pred = model.predict(X_test)
# 评估模型性能
print(classification_report(y_test, y_pred))
阅读全文