生成代码SVM 分类模型 搭建并创建支持向量机模型实现玻璃等级划分问题。将数据集按8:2的比例划分为训练集和 测试集,使用 SVM 分类器对训练集进行训练,并使用测试集测试玻璃等级划分的准确性。 (1)读取数据集‘glass.csv',划分数据和标签(最后一列数据“类别“为标签); (2)按8:2划分训练集和测试集 (3)对数据标准差标准化
时间: 2024-02-03 15:13:21 浏览: 78
下面是 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 accuracy_score
# 读取数据集
data = pd.read_csv('glass.csv')
# 划分数据和标签
X = data.iloc[:, :-1]
y = data.iloc[:, -1]
# 按8:2划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 对数据标准差标准化
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
# 创建 SVM 分类器
svm = SVC(kernel='linear', C=1, gamma='auto')
# 训练 SVM 分类器
svm.fit(X_train, y_train)
# 预测测试集
y_pred = svm.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy: {:.2f}%".format(accuracy * 100))
```
解释一下上面的代码:
首先,我们导入了所需的库。然后,我们使用 Pandas 的 `read_csv()` 函数读取名为 `glass.csv` 的数据集,并使用 `iloc()` 方法将数据和标签分开。
接下来,我们使用 `train_test_split()` 函数按照 8:2 的比例将数据集划分为训练集和测试集。同时,我们使用 `StandardScaler()` 函数对数据进行标准化处理。
然后,我们创建了一个支持向量机分类器 `svm`,并使用 `fit()` 方法对训练集进行训练。最后,我们使用 `predict()` 方法预测测试集,并使用 `accuracy_score()` 函数计算准确率。
最后,我们输出准确率。
阅读全文