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

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

相关推荐
AI、少年郎16 小时前
MiniMind 第 4 篇:《数据工程|Tokenizer 训练 + 预训练 / SFT/DPO 全数据集处理》
人工智能·python·ai·大模型·微调·大模型训练·minimind
InfinteJustice16 小时前
mysql如何设计积分系统_mysql流水账与余额对账
jvm·数据库·python
NotFound48616 小时前
Golang怎么实现防重复提交_Golang如何用Token机制防止表单重复提交【技巧】
jvm·数据库·python
fly-iot16 小时前
TradingAgents 是一个模拟真实交易公司运作模式的多智能体交易框架,本地运行命令行工具,演示执行命令行模式,使用docker镜像打包
python·股票系统·tradingagents
2401_8654396317 小时前
CSS如何实现图片自动裁剪填充_巧用object-fit属性控制尺寸
jvm·数据库·python
m0_7488394917 小时前
HTML函数能否用液态金属散热提升性能_极端散热方案实测【汇总】
jvm·数据库·python
2301_8035389517 小时前
mysql添加索引导致插入变慢怎么办_索引优化与异步处理方案
jvm·数据库·python
该醒醒了~17 小时前
深度学习异常检测Anomalib算法训练+推理+转化+onnx
人工智能·python·深度学习
2301_7826591817 小时前
如何防止SQL脏数据写入_利用触发器实现强一致性校验
jvm·数据库·python
2301_8176722617 小时前
如何实现元素从底部进入视口时触发 sticky 定位
jvm·数据库·python