数据分析的一个完整流程(个人学习)

数据分析的完整流程(个人学习)

课程学习
数据集:UCI的wine quality数据集
首先用pandas的read_csv获得wine quailty数据
在这里插入图片描述
一.大致了解数据,并作必要的预处理
1.wine.info()来了解每一列数据的类型
必要时用astype()函数转换数据类型
2.wine数据中很可能有很多重复的数据,因此需要去重
wine.duplicated().sum()可以获得重复的行数
在这里插入图片描述
3.用wine.drop_duplicates()函数去重,现在剩下1359行数据
在这里插入图片描述
4.wine.describe()可查看数据的基本统计信息,如平均数,中位数,四分位数,方差等等在这里插入图片描述
5.用value_counts()函数可以查看某一列的各个数位的个数
在这里插入图片描述
下面主要研究的是wine.quality
1.把wine的个体按照quality分到3类,类似于连续属性离散化
把它们装到三个箱子中去,分别为【低质量,中等质量,高质量】
区间为【2,4】,【4,6】,【6,8】
在这里插入图片描述
在这里插入图片描述
from sklearn.processing import LabelEncoding
lb=LabelEncoding()
这样就能让箱子的标记从字符串类型变为数值类型,方便后续处理
在这里插入图片描述
二.现在建立一个模型,使得在已知前面十一个数据的时候,推出label的值
用的是随机森林模型

在这里插入图片描述
这就类似于一个解线性方程组的感觉,AX=y
要求从训练的数据中训练出A模型
最后已知x时,得出y的值
在这里插入图片描述
train_test_split就是把X,y分为训练集和测试集,test_size取整个数据集的百分之20
得到X的训练集和测试集后,要把它们做0均值规范化scale()
再导入RandomForestClassifier函数
模型的决策树个数取200个
用X_train,y_train训练集训练rfc模型
最后用X_test带入模型中,得到y预测的值
在这里插入图片描述
而要对预测的值做误差分析就要用混乱矩阵
在这里插入图片描述
其中15表示0类别的个体预测正确的个数,22表示本来是0类别的被误判到2类别的个数
行表示实际类别,列表示预判类别
可以看到2类别的正确预测的个数最多
对于rfc的参数n_estimators=200是可以用一种通用的方法找到最优的参数的
在这里插入图片描述
用GridSearchCV函数
其中的参数rfc是模型,param_grid是要调整的参数的范围
再用X_trian与y_train训练grid_rfc让它得出最优参数
在这里插入图片描述
再重新对rfc这个随机森林模型写入参数
再次训练,得到模型

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值