Python与机器学习(第2版)(微课版) 课件 01-05-异常值处理任务实施_第1页
Python与机器学习(第2版)(微课版) 课件 01-05-异常值处理任务实施_第2页
Python与机器学习(第2版)(微课版) 课件 01-05-异常值处理任务实施_第3页
Python与机器学习(第2版)(微课版) 课件 01-05-异常值处理任务实施_第4页
Python与机器学习(第2版)(微课版) 课件 01-05-异常值处理任务实施_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

主讲人:陈清华异常值处理任务实施【数据挖掘应用】课程用餐数据异常分析知识与能力目标掌握常用的异常值检测与处理方法;会使用Pandas、Matplotlib等工具识别异常值;会使用Pandas等工具处理异常值。主要内容任务说明引导问题任务实施步骤任务解决方案用餐数据异常值检测与处理教学难点任务概述基础数据任务工单

任务描述:

基于前续任务的结果,对用餐数据中的小费(tip)列做异常检测,如发现异常值,则对其做适当的处理。基于获得的数据集,使用不同的方法来发现异常值,比如简单统计、箱形图等分析存在的异常值,选择适当的方法对其做相应的处理,比如删除、替换等(1)什么是异常值?异常值对数据分析与挖掘会有什么样的影响?(2)识别异常值的方法有哪些?使用时,有何注意要点?(3)Pandas中提供了什么样的工具可用于检测异常值?(4)如何对已发现的异常值做处理?(5)Pandas中提供了什么样的工具可用于做异常值处理?

问题引导:任务概述

任务评价:任务概述评价内容评价要点分值分数评定自我评价1.任务实施异常值检测5分会使用不同方法识别异常值,会使用1种得1分,至多5分

异常值输出2分能正确显示含有异常值的记录得2分

缺失值处理2分会使用不同方式处理异常值,会使用1种得1分,至多2分

3.任务总结依据任务实施情况总结结论1分结论切中任务要点,能比较不同方法的适用性得1分

合计10分

任务解决方案

(1)检测tip列是否存在异常值:散点图#coding:utf-8importmatplotlib.pyplotaspltfig,ax=plt.subplots()ax.scatter(re1['day'],re1['tip2’])plt.xlabel('day')plt.ylabel('tip')第2行:导入画图包方法一:使用散点图查看数据分布,观察tip的分布及与发生日期的关系任务解决方案

(1)检测tip列是否存在异常值:简单统计

re1.sort_values(by='tip2',ascending=True)方法二:对tip列的值进行排序。排序后的数据呈现规律性,易帮助发现异常值。部分结果显示任务解决方案re1['tip2'].hist(bins=20)plt.xlabel('tip')方法三:对于服务正态分布的数据,我们可以使用3δ原则。首先,我们可以使用直方图查看tip数据的分布。使用直方图显示数据分布

(1)检测tip列是否存在异常值:3δ原则任务解决方案u=re1['tip2'].mean()delta=re1['tip2'].std()a=u-3*deltab=u+3*deltare1[(re1['tip2']<a)|(re1['tip2']>b)]第1行:获得小费均值第5行:条件筛选,显示异常记录第3、4行:计算小费边界值第2行:获得小费标准差

(1)检测tip列是否存在异常值:3δ原则任务解决方案re1[['tip2']].boxplot()方法四:使用箱形图也可以帮助我们找到异常值部分结果显示

(1)检测tip列是否存在异常值:箱形图任务解决方案ax1=sns.boxplot(y="tip2",data=re1) ax2=sns.swarmplot(y="tip2",data=re1,color=".25")箱形图与分簇散点图结合使用显示图像

(1)检测tip列是否存在异常值:箱形图任务解决方案Q1=np.percentile(re1['tip2'],25)median=np.percentile(re1['tip2'],50)Q3=np.percentile(re1['tip2'],75)IQR=Q3-Q1low=Q1-1.5*IQRhigh=Q3+1.5*IQRre1[(re1['tip2']<low)|(re1['tip2']>high)]第6行:计算上极限第4行:计算IQR第1行:计算下四分位数第3行:计算上四分位数第2行:计算中位数第5行:计算下极限第7行:筛选异常值

(1)检测tip列是否存在异常值:箱形图任务解决方案

(2)分组检测

tip

列是否存在异常值:ax=sns.boxplot(x="size",y="tip2",data=re1)ax=sns.swarmplot(x="size",y="tip2",data=re1,color=".25")显示图像箱形图任务解决方案

(3)异常值处理new_re1=re1[(re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论