一个csv文件中,是3种分类,作为分类模型的输入,前10列为10个变量作为输入变量,11列为分类标签,请用机器学习算法给我一个完整的分类预测代码
时间: 2024-03-18 12:42:35 浏览: 14
好的,以下是一个分类预测的Python代码,使用了支持向量机(SVM)算法:
```python
# 导入需要的库
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import classification_report
# 读入csv文件
data = pd.read_csv('data.csv')
# 将数据集分为训练集和测试集
X = data.iloc[:, :-1] # 输入变量
y = data.iloc[:, -1] # 分类标签
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 特征缩放
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
# 训练SVM模型
model = SVC(kernel='linear')
model.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = model.predict(X_test)
# 输出分类报告
print(classification_report(y_test, y_pred))
```
这段代码假设你的csv文件名为`data.csv`,其中前10列是输入变量,最后一列是分类标签。它首先读入数据,然后将数据集分为训练集和测试集。接着对训练集进行特征缩放,然后使用SVM算法进行模型训练。最后在测试集上进行预测,并输出分类报告。你可以根据需要更改SVM模型的参数以及训练集和测试集的比例。