数据分析实战—玻璃类别分类

1.实战内容

(1) 加载玻璃类别数据集,划分训练集、测试集

python 复制代码
import pandas as pd
import numpy as np
pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)
# 读取数据集
glass = pd.read_csv('glass.csv', encoding='gbk', header=None)
glass_data = glass.iloc[1:, : -1]
glass_target = glass.iloc[1:, -1]
glass
python 复制代码
glass_data
python 复制代码
glass_target
python 复制代码
# 划分训练集和测试集
from sklearn.model_selection import train_test_split
glass_data_train, glass_data_test, \
glass_target_train, glass_target_test = \
train_test_split(glass_data, glass_target, test_size=0.2, random_state=6)
python 复制代码
glass_data_train
python 复制代码
glass_data_test

(2) 对训练集、测试集进行标准差标准化,并分别输出标准化之后的训练集、测试集的方差和均值。

python 复制代码
# 标准差标准化
from sklearn.preprocessing import StandardScaler
stdScale = StandardScaler().fit(glass_data_train)
glass_trainScaler = stdScale.transform(glass_data_train)
glass_testScaler = stdScale.transform(glass_data_test)
print('标准差标准化后训练集数据的方差为:', np.var(glass_trainScaler))
print('标准差标准化后训练集数据的均值为:', np.mean(glass_trainScaler))
print('标准差标准化后测试集数据的方差为:', np.var(glass_testScaler))
print('标准差标准化后测试集数据的均值为:', np.mean(glass_testScaler))
python 复制代码
glass_trainScaler

(3) 使用支持向量机对玻璃类别数据集进行分类,输出分类模型评价报告。

python 复制代码
# PCA降维
from sklearn.decomposition import PCA
pca = PCA(n_components=0.999).fit(glass_data_train)
glass_trainPca = pca.transform(glass_data_train)
glass_testPca = pca.transform(glass_data_test)
python 复制代码
# SVM分类模型
from sklearn.svm import SVC
svm = SVC().fit(glass_trainScaler, glass_target_train)
print('建立的SVM模型为:\n', svm)
glass_target_pred = svm.predict(glass_testScaler)
print('预测前10个结果为:\n', glass_target_pred[: 10])
# 打印出分类报告,评价分类模型性能
from sklearn.metrics import classification_report
print('使用SVM预测glass数据的分类报告为:', '\n',
classification_report(glass_target_test, glass_target_pred))

(4) 使用梯度提升回归树对玻璃类别数据集进行回归,并计算回归模型的5项评价指标得分。

python 复制代码
from sklearn.ensemble import GradientBoostingRegressor
GBR_glass = GradientBoostingRegressor().fit(glass_trainPca, glass_target_train)
glass_target_pred = GBR_glass.predict(glass_testPca)
# 回归模型评价指标
from sklearn.metrics import explained_variance_score, mean_absolute_error, mean_squared_error, median_absolute_error, r2_score
print('glass数据梯度提升回归树模型的平均绝对误差为:',
mean_absolute_error(glass_target_test, glass_target_pred))
print('glass数据梯度提升回归树模型的均方误差为:',
mean_squared_error(glass_target_test, glass_target_pred))
print('glass数据梯度提升回归树模型的中值绝对误差为:',
median_absolute_error(glass_target_test, glass_target_pred))
print('glass数据梯度提升回归树模型的可解释方差值为:',
explained_variance_score(glass_target_test, glass_target_pred))
print('glass数据梯度提升回归树模型的 R 方值为:',
r2_score(glass_target_test, glass_target_pred))

2.数据集下载

https://gitee.com/qxh200000/c_-code/commit/1af2468e6b7f1bd8cd3b890018031c6fa6dff9bd

相关推荐
你知道网上冲浪吗12 分钟前
【原创理论】Stochastic Coupled Dyadic System (SCDS):一个用于两性关系动力学建模的随机耦合系统框架
python·算法·数学建模·数值分析
钢铁男儿16 分钟前
Python 正则表达式核心元字符全解析
python
杨荧41 分钟前
基于Python的宠物服务管理系统 Python+Django+Vue.js
大数据·前端·vue.js·爬虫·python·信息可视化
CodeCraft Studio1 小时前
在 Python 中操作 Excel 文件的高效方案 —— Aspose.Cells for Python
python·ui·excel·报表·aspose·aspose.cells
l1t1 小时前
利用DeepSeek辅助WPS电子表格ET格式分析
人工智能·python·wps·插件·duckdb
WSSWWWSSW2 小时前
Matplotlib数据可视化实战:Matplotlib子图布局与管理入门
python·信息可视化·matplotlib
WSSWWWSSW2 小时前
Matplotlib数据可视化实战:Matplotlib图表美化与进阶教程
python·信息可视化·matplotlib
mftang2 小时前
Python可视化工具-Bokeh:动态显示数据
开发语言·python
Seeklike2 小时前
diffuxers学习--AutoPipeline
人工智能·python·stable diffusion·diffusers
前端小趴菜052 小时前
python - 数据类型
python