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

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

相关推荐
蹦蹦跳跳真可爱5891 小时前
Python----计算机视觉处理(Opencv:道路检测之提取车道线)
python·opencv·计算机视觉
Tanecious.3 小时前
机器视觉--python基础语法
开发语言·python
ALe要立志成为web糕手3 小时前
SESSION_UPLOAD_PROGRESS 的利用
python·web安全·网络安全·ctf
Uzuki4 小时前
AI可解释性 II | Saliency Maps-based 归因方法(Attribution)论文导读(持续更新)
深度学习·机器学习·可解释性
Tttian6225 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel
蹦蹦跳跳真可爱5895 小时前
Python----机器学习(KNN:使用数学方法实现KNN)
人工智能·python·机器学习
独好紫罗兰6 小时前
洛谷题单2-P5713 【深基3.例5】洛谷团队系统-python-流程图重构
开发语言·python·算法
Start_Present7 小时前
Pytorch 第十二回:循环神经网络——LSTM模型
pytorch·rnn·神经网络·数据分析·lstm
DREAM.ZL7 小时前
基于python的电影数据分析及可视化系统
开发语言·python·数据分析
Uncertainty!!8 小时前
python函数装饰器
开发语言·python·装饰器