版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据挖掘基础数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置数据挖掘概念KDD(KnowledgeDiscoveryfromData):从数据中发现知识。数据挖掘(DataMining):是KDD的核心部分,它是指从数据集合中自动抽取隐藏在数据中的有用信息的非平凡过程,这些信息的表现形式有规则、概念、规律和模式等。数据挖掘发展史1995年:起源1997年:快速发展时期21世纪:成熟时期近年来:各领域深度融合的趋势未来:持续发展数据挖掘的发展历程数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置伦理困境与法律规制1.核心伦理困境知情同意算法歧视与公平性缺失数据挖掘的伦理冲突集中体现在数据处理全流程中的价值失衡,主要表现为两大核心困境。伦理困境与法律规制2.主要法律框架为应对隐私风险,全球已形成以欧盟GDPR为标杆、各国特色化补充的法律体系。我国对数据挖掘的相关法律如下。《中华人民共和国数据安全法》《互联网信息服务算法推荐管理规定》《中华人民共和国个人信息保护法》数据隐私与合规性为应对数据隐私挑战,相关企业需建立系统的数据治理体系,将隐私保护融入数据挖掘全流程。合规性实践包括数据分类分级、访问控制、匿名化处理以及定期安全审计等。技术手段上,差分隐私、联邦学习、同态加密等隐私计算技术正逐渐应用于数据挖掘中,使得在不出域的前提下完成模型训练与推理成为可能,有效降低了数据泄露风险。相关企业应加强企业员工的数据伦理与法律意识培训,确保数据挖掘活动不仅在技术上可行,更需要在伦理与法律上站得住脚。只有在技术、管理与法规三者协同的基础上,数据挖掘才能在释放数据价值的同时,切实保障个人隐私与社会公平。数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置数据挖掘的常用方法分类与回归聚类关联规则智能推荐时间序列大语言模型数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置数据挖掘的通用流程目标分析数据抽取数据探索数据预处理分析与建模模型评价数据挖掘的通用流程的顺序并不是严格不变的,可根据实际项目的情况进行不同程度的调整。目标分析针对具体的数据挖掘应用需求,先要明确本次的挖掘目标是什么,以及系统完成数据挖掘后能达到什么样的效果。必须分析应用领域,包括应用领域中的各种知识和应用目标,了解相关领域的有关情况,熟悉背景知识,弄清用户需求。要想充分发挥数据挖掘的价值,必须对目标有一个清晰明确的定义,即确定到底想干什么。数据抽取在明确了数据挖掘的目标后,接下来就需要从业务系统中抽取出一个与挖掘目标相关的样本数据子集。衡量取样数据质量的标准包括:资料完整无缺,各类指标项齐全;数据准确无误,反映的都是正常状态下的水平。随机抽样等距抽样分层抽样按起始顺序抽样分类抽样数据探索当拿到一个样本数据集后,它是否达到设想的要求,其中有没有什么明显的规律和趋势,有没有出现从未设想过的数据状态,属性之间有什么相关性,它可分成哪些类别等,这些都是需要先进行探索的内容。对所抽取的样本数据进行探索、审核和必要的加工处理,是保证最终挖掘模型的质量所必需的操作。挖掘模型的质量不会优于抽取的样本的质量。数据探索和预处理的目的是保证样本数据的质量,从而为保证模型质量打下基础。数据探索主要包括数据校验、描述性统计分析、分布分析、对比分析、周期性分析、贡献度分析、相关性分析等。数据预处理当采样数据的表达形式不一致时,如何进行数据变换、数据合并等都是数据预处理要解决的问题。由于采样数据中常常包含许多含有噪声、不完整甚至不一致的数据,因此需要对数据进行预处理以改善数据质量,并最终达到完善数据挖掘结果的目的。数据预处理主要包括重复值处理、缺失值处理、异常值处理、简单函数变换、数据标准化、数据离散化、独热编码、数据合并等。分析与建模样本抽取和预处理都完成后,需要考虑本次建模属于数据挖掘应用中的哪类问题,还需考虑选用哪种算法进行模型构建更为合适。分类与回归算法线性模型决策树最近邻分类支持向量机神经网络集成算法……聚类算法K-Means聚类密度聚类层次聚类……关联规则AprioriFP-Growth……智能推荐基于内容推荐协同过滤推荐算法……时间序列模型AR模型MA模型ARMA模型ARIMA模型……模型评价在建模过程中会得出一系列的分析结果,模型评价的目的之一就是依据这些分析结果,从训练好的模型中寻找出一个表现最佳的模型,并结合业务场景对模型进行解释和应用。适用于分类与回归模型、聚类分析模型、智能推荐模型的评价方法是不同的。数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置常用数据挖掘工具数据挖掘是一个反复探索的过程,只有将数据挖掘工具提供的技术和实施经验与企业的业务逻辑和需求紧密结合,并在实施过程中不断地磨合,才能取得好的效果。常用的几种数据挖掘建模工具如下。PythonIBMSPSSModelerKNIMERapidMinerTipDM开源数据挖掘建模平台阿里云数加数据挖掘发展史数据隐私安全数据挖掘的常用方法数据挖掘的通用流程常用数据挖掘工具Python数据挖掘环境配置Python数据挖掘环境配置Python是一门结合了解释性、编译性、互动性的面向对象的高层次计算机程序语言,也是一门功能强大而完善的通用型语言,已具有30多年的发展历史,成熟且稳定。Anaconda是Python的一个集成开发环境,可以便捷地获取库,并且提供对库的管理功能,可以对环境进行统一管理。进入Anaconda发行版官方网站,下载Windows系统的Anaconda安装包,选择Python3.12.7版本。安装Anaconda1.双击打开安装包,再单击【Next】按钮进入下一步。安装Anaconda2.单击【IAgree】按钮,表示同意上述协议并进入下一步。安装Anaconda3.选择【AllUsers(requiresadminprivileges)】单选按钮,然后单击【Next】按钮,进入下一步。安装Anaconda4.单击【Browse…】按钮,指定安装Anaconda的路径,然后单击【Next】按钮,进入下一步。。安装Anaconda5.两个复选框分别代表允许创建快捷方式、允许将Anaconda3注册为系统Python3.12。勾选这两个复选框,然后单击【Install】按钮,等待安装结束。安装Anaconda6.当安装进度条满格后,依次单击【Next】按钮。安装Anaconda7.勾选界面中的【LaunchAnacondaNavigator】(启动AnacondaNavigator)、【GettingStartedwithAnacondaDistribution】(开始使用Anaconda发行版)两个复选框,单击【Finish】按钮,即可完成Anaconda的安装。小结本章主要介绍了数据挖掘的基础知识,包括数据挖掘的发展史、常用方法、通用流程和常用工具,Python数据挖掘环境的配置,以及数据隐私安全。数据挖掘的通用流程包括目标分析、数据抽取、数据探索、数据预处理、分析与建模、模型评价。常用的数据挖掘工具包括Python、IBMSPSSModeler、KNIME、RapidMiner、TipDM开源数据挖掘建模平台和阿里云数加。Python数据挖掘编程基础Python使用入门Python数据挖掘建模的常用库基本命令1.基本运算初识Python,可以将其当作一个方便的计算器。Python支持对字符串的灵活操作。基本命令2.数据结构Python有4个内置的数据结构——列表、元组、字典和集合它们统称为容器。4个内置的数据结构实际上是由一些元素组合而成的结构,这些元素可以是数字、字符或列表,也可以是几种元素的组合。容器里的数据结构可以是任意的;且容器内部的元素类型不要求相同。数据结构1.列表和元组列表和元组都是序列结构,两者很相似,但又有一些不同的地方。列表与元组的区别是列表使用方括号进行标记,如m=[0,2,4]。元组使用圆括号进行标记,如n=(6,8,10)。访问列表和元组中的元素的方式都是一样的,如m[0]等于0,n[2]等于10等。外形上列表与元组的区别是列表可以被修改,而元组不可以。如果已经有了一个列表m,需要将列表m复制为列表n,那么使用语句n=m是无效的,因为这时n仅仅是m的别名(或引用),修改n的同时也会修改m。正确的复制语句应该是n=m[:]。功能上列表和元组与列表有关的函数是list,与元组有关的函数是tuple,其用法和功能几乎一样,都是将某个对象转换为列表或元组。例如,list('cd')的结果是['c','d'],tuple([0,1,2])的结果是(0,1,2)。函数功能函数功能cmp(m,n)比较两个列表或元组的元素min(m)返回列表或元组中元素的最小值len(m)返回列表或元组中元素的个数sum(m)对列表或元组中的元素求和max(m)返回列表或元组中元素的最大值sorted(m)对列表或元组中的元素进行升序排序列表和元组列表作为对象,自带了很多实用的方法。列表还有“列表解析”这一功能。列表解析功能能够简化操作列表内元素的代码。方法功能m.append(1)将1添加到列表m的末尾m.count(1)统计列表m中元素1出现的次数m.extend([1,2])将列表[1,2]中的内容追加到列表m的末尾数据结构2.字典在数学意义上,字典实际上是一个映射。字典也相当于一个列表,但是其下标不是以0开头的数字,而是自己定义的键(Key)。创建字典访问字典中的元素通过dict函数或dict.fromkeys创建字典数据结构3.集合Python内置了集合这一数据结构,它与数学中的集合的概念基本一致。集合中的元素是不重复的,而且是无序的。集合不支持索引。通过花括号或set函数来创建集合集合的运算循环与判断判断和循环是编程语言中的基本命令,Python判断语句的格式如下。if条件1:
语句1elif条件2:
语句2else:
语句3注意:代码缩进循环与判断Python的循环包括for循环和while循环,在绝大多数情况下,for循环和while循环可等价使用。for循环适合已知循环次数的操作,while循环适合循环次数是未知的操作。两种循环操作都可以用任意表达式表示条件;都需要在满足条件的前提下,才会进入循环体中执行语句。函数1.自定义函数Python使用关键字def定义自定义函数,函数返回值可以是各种形式。Python支持使用lambda定义“行内函数”。函数2.函数式编程函数式编程(FunctionalProgramming)或函数程序设计,又称泛函编程,是一种编程范型。函数式编程将计算机运算视为数学中的函数计算,并且避免了程序状态及易变对象对函数的影响。filterlambdamap…reduce库的导入与添加1.库的导入Python本身内置了很多强大的库,如可以完成更加丰富、复杂的数学运算的math库。使用“import库名”命令导入库为库起一个别名特别指定要导入的函数的名字直接导入库中的所有函数库的导入与添加2.安装第三方库常见的安装第三方库的方法如下。方法特点下载源代码自行安装安装灵活,但需要自行解决上级依赖问题用pip命令安装比较方便,可以自动解决上级依赖问题用easy_install命令安装比较方便,可以自动解决上级依赖问题下载编译好的可执行文件包一般只有Windows系统才提供现成的可执行文件包系统自带的安装方式Linux或Mac系统的软件管理器自带了某些库的安装方式Python使用入门Python数据挖掘建模的常用库Python数据挖掘建模的常用库Python拥有丰富的第三方库,在许多领域都有着广泛的应用。随着各种模块的逐步完善,Python在科学领域的地位越来越重要。Python部分库的作用如下表。类别核心库名称核心作用描述数据获取requests发送HTTP请求,获取网页/API数据,支持各种请求方法和参数配置。Scrapy专业爬虫框架,支持分布式爬取、数据解析、反爬处理,适合大规模数据采集。BeautifulSoup解析HTML/XML文档,提取标签内容、属性等,常与requests配合使用。数据预处理pandas处理结构化数据,提供缺失值填充、格式转换、数据过滤、合并等功能。NumPy提供高效数组操作,支持数值计算、维度转换,是多数数据处理库的基础。scikit-learn包含标准化、归一化、编码(One-Hot/Label)、特征选择等预处理工具。Python数据挖掘建模的常用库Python部分库的作用如下表(续)。类别核心库名称核心作用描述数据可视化Matplotlib基础绘图库,支持折线图、柱状图、直方图等,可高度自定义图表样式。Seaborn基于Matplotlib,专注统计可视化,简化热图、箱线图、分类散点图等绘制。Plotly交互式可视化库,生成可交互图表(缩放、悬停查看详情),支持Web展示。机器学习scikit-learn经典机器学习库,包含分类、回归、聚类、降维等算法,支持模型训练与评估。深度学习TensorFlow谷歌深度学习框架,支持构建复杂神经网络(CNN/RNN/Transformer),适合生产部署。PyTorch动态计算图深度学习框架,调试便捷,受科研领域青睐,支持快速原型开发。NumPyNumPy的前身为Numeric,最早由吉姆·弗贾宁(JimHugunin)与其他协作者共同开发。2005年,特拉维斯·奥利芬特(TravisOliphant)在Numeric中结合了另一个同性质的程序库Numarray的特色,并进行了其他扩展而开发出了NumPy。NumPy是用Python进行科学计算的基础软件包,同时也是一个Python库。NumPyNumPy提供多维数组对象和各种派生对象,以及用于数组快速操作的各种API,因而能够快速地处理数据量大且烦琐的数据运算。NumPy是很多更高级的扩展库的依赖库。NumPy内置函数处理数据的速度是C语言级别的,因此在编写程序的时候,应当尽量使用NumPy中的内置函数,从而避免效率瓶颈。pandaspandas的名称源自面板数据(PanelData)和Python数据分析(DataAnalysis),其最初被作为金融数据分析工具而开发出来,由AQRCapitalManagement于2008年4月开发,并于2009年底开源。pandas是Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。pandas能够与其他第三方科学计算支持库完美地集成。pandas还包含了高级的数据结构和精巧的工具,使得在Python中处理数据非常快速和简单。pandaspandas中的常用数据结构为Series(一维数据)与DataFrame(二维数据)。可提供高性能的矩阵运算可用于数据挖掘和数据分析提供数据清洗功能支持类似SQL的数据增、删、查、改操作有丰富的数据处理函数有时间序列分析功能可灵活地处理缺失数据pandas功能MatplotlibMatplotlib是由约翰·亨特(JohnHunter)等人研究发明出来的,最初只是为了可视化癞痢病人的一些健康指标。慢慢地,Matplotlib变成了Python中使用最广泛的可视化工具包。Matplotlib是Python的绘图库,主要用于二维绘图,也可以进行简单的三维绘。Matplotlib提供了一整套和MATLAB相似但更为丰富的命令,可以非常快捷地使用Python可视化数据,而且可以输出达到出版质量的多种图像格式,还十分适合交互式地制图。Matplotlib也可作为绘图控件,嵌入GUI应用程序或CGI、Flask、Django中。MatplotlibMatplotlib绘图库的特点如下。不仅支持交互式绘图,而且支持非交互式绘图支持绘制曲线(折线)图、条形图、柱状图、饼图可对绘制的图形进行配置支持Linux、Windows、macOSX与Solaris的跨平台绘图迁移学习的成本比较低支持LaTeX的公式插入scikit-learnscikit-learn(简称sklearn)项目最早由数据科学家大卫·库尔纳佩(DavidCournapeau)在2007年发起,其需要NumPy和SciPy等库的支持。scikit-learn是一个强大的Python机器学习库,提供了完善的机器学习工具,能完成数据预处理、分类、回归、聚类、预测、模型分析等操作。scikit-learn还是一种简单高效的数据挖掘和数据分析工具,并且可以在各种环境中重复使用。scikit-learn的内部实现了各种各样成熟的算法,容易安装和使用,样例也十分丰富。scikit-learn使用scikit-learn创建机器学习模型。所有模型提供的接口为model.fit(),用于训练模型。用于分类与回归算法的训练模型的语句为fit(X,y)。用于非分类与回归算法的训练模型需要的语句为fit(X)。分类与回归模型提供如下接口。model.predict(X_new):用于预测新样本。model.predict_proba(X_new):用于预测概率,仅对某些模型有用。model.score():得分越高,模型拟合效果越好。scikit-learn非分类与回归模型提供如下接口。model.transform():在fit函数的基础上,进行标准化、降维、归一化等数据处理操作。model.fit_transform():fit函数和transform函数的组合,既包含了训练又包含了数据处理操作。scikit-learn本身还提供了一些实例数据用于练习,常见的有安德森鸢尾花卉数据集、手写图像数据集等。深度学习框架1.TensorFlow2015年11月10日,Google推出了全新的开源工具TensorFlow。它是基于Google2011年开发的深度学习基础框架DistBelief构建而成的,主要应用于深度神经网络。TensorFlow即Tensor和Flow,Tensor意味着数据,Flow意味着流动、计算、映射,TensorFlow即数据的流动、数据的计算、数据的映射,同时也体现出数据是有向地流动、计算和映射的。深度学习框架1.TensorFlow具有高度灵活性具有可移植性可以自动计算梯度和函数导数可以将硬件的性能最优化可以将不同的计算任务分配到不同的单元之中支持多种编程语言TensorFlow深度学习框架2.KerasKeras由Python编写而成,它是使用TensorFlow、Theano和CNTK作为后端的一个深度学习框架。Keras的预测函数与scikit-learn有所差别Keras用model.predict()方法给出概率,scikit-learn用model.predict_classes()方法给出分类结果。Keras功能特点如下。Keras具有高度模块化、用户友好性和易扩展的特性支持卷积神经网络和循环神经网络,以及两者的组合可无缝衔接CPU和GPU的切换深度学习框架3.PyTorch2017年1月,Facebook人工智能研究院在GitHub上开源了PyTorch,PyTorch迅速成为GitHub热度榜的榜首。PyTorch是一个基于Torch的Python开源机器学习库,同时还是一个深度学习框架,可用于自然语言处理等应用程序。PyTorch不仅能够实现强大的GPU加速,同时还支持动态神经网络。PyTorch可以帮助用户构建深度学习项目。PyTorch可以提供命令式体验,直接使用nn.module封装便可使网络搭建更快速和方便。PyTorch调试起来很简单。深度学习框架3.PyTorchPyTorch中有较为完备的应用领域所对应的库。应用领域对应的PyTorch库计算机视觉TorchVision自然语言处理PyTorchNLP图卷积PyTorchGeometric工业部署Fastai深度学习框架4.PaddlePaddlePaddlePaddle(即飞桨)是一个易用、高效、灵活、可扩展的深度学习框架,于2016年正式向专业社区开源。PaddlePaddle支持超大规模深度学习模型的训练、多端多平台部署的高性能推理引擎等。提供命令式编程模式功能、性能和体验。原生推理库性能显著优化,轻量级推理引擎实现了对硬件支持的极大覆盖。CUDA下多线程多流支持、TRI子图对动态shape输入的支持,强化了量化推理,性能显著优化。全面提升了对支持芯片的覆盖度,以及对应的模型数量和性能。深度学习框架5.CaffeCaffe是一个深度学习框架,是由伯克利人工智能研究所和社区贡献者共同开发的。Caffe主要应用于视频、图像处理等领域,其核心语言是C++。Caffe支持命令行、Python和MATLAB接口,还支持在CPU、GPU上运行,其通用性好,且非常稳定。Caffe具有上手快的特点,其模型与相应优化都是以文本形式而非代码形式给出的。Caffe的运行速度快,能够运行较复杂的模型与海量的数据,用户可以使用Caffe提供的各层类型来定义自己的模型。深度学习框架6.其他PyMySQLPyMySQL是用于连接MySQL服务器的一个库。SciPySciPy是数学、科学和工程的开源软件。StatsmodelsStatsmodels提供对许多不同统计模型估计的类和函数,可以进行统计测试,以及数据的探索、可视化。XGBoostXGBoost是一个经过优化的分布式梯度提升库,具有设计高效、灵活且可移植的特点。小结本章主要讲解了Python数据挖掘编程基础。重点介绍了Python使用入门、Python数据分析预处理的常用库及Python数据挖掘建模的常用库和框架。本章结合实际操作,对Python基本命令和数据结构进行了介绍,并结合实际意义与作用,对常用库进行了简单的介绍。数据探索数据校验数据特征分析数据校验数据校验可检查出原始数据中是否存在噪声数据,从而针对所出现的噪声数据类型采取相应的解决措施。常见的数据校验类型分为一致性校验、缺失值校验、异常值校验和数据漂移校验4种。一致性校验1.时间校验时间不一致是指数据在合并或联立后,时间字段出现时间范围、时间粒度、时间格式或时区不一致等情况。时间范围不一致通常是指不同表的时间字段中所包含的时间的取值范围不一致。时间粒度不一致通常是指在数据采集时没有设置统一的采集频率。时间格式不一致通常是指不同系统之间设置时间字段时采用的格式不一致。时区不一致通常是指数据传输时的设置不合理,导致时间字段出现不一致的情况。时间校验时间范围不一致两列时间字段的取值范围分别为2025年1月1日-2025年1月31日和2025年1月17日-2025年2月20日,此时如果需要联立两列时间字段,那么需要对时间字段进行补全,否则将会产生大量空值或报错。time_1time_22025-01-0108:35:002025-01-1710:31:002025-01-0209:16:002025-01-1811:36:002025-01-0310:33:002025-01-199:45:00…………2025-01-3015:20:002025-02-1919:27:002025-01-3121:18:002025-02-2023:55:00时间校验时间粒度不一致某地部分设备的系统尚未升级,采集频率为每分钟采集一次;另一部分设备已经升级,升级后采集频率提高至每30秒采集一次。如果此时将这两部分数据合并,那么将会导致数据时间粒度不一致。unupgraded_time_1upgrade_time_22025/03/1610:35:002025/6/814:12:302025/03/1610:36:002025/6/814:13:002025/03/1610:37:002025/6/814:13:302025/03/1610:38:002025/6/814:14:002025/03/1610:39:002025/6/814:14:30时间校验时间格式不一致订单系统的时间字段order_time1与结算系统的时间字段end_time2采用了不同的格式,从而导致时间格式不一致。order_time1end_time22025-08-1515:16:00202511051430002025-08-1515:25:00202511051435002025-08-1515:33:00202511051442002025-08-1515:40:00202511051448002025-08-1515:47:0020251105145100时间校验时区不一致海外服务器时间字段Overseas_sever_time与本地服务器时间字段Local_sever_time因时区差异造成固定相差5个小时。Overseas_sever_timeLocal_sever_time2025/05/1009:10:302025/05/1014:10:302025/05/1009:11:002025/05/1014:11:002025/05/1009:11:302025/05/1014:11:302025/05/1009:12:002025/05/1014:12:002025/05/1009:12:302025/05/1014:12:30一致性校验2.字段信息校验在数据收集工作中,往往会出现重复收集数据或在数据库中重复写入数据的情况,从而导致数据冗余。字段信息校验主要是检验数据中是否存在重复值,从而避免重复数据对分析结果造成的影响。字段信息校验产生重复值的主要原因在收集数据时没有进行查重或查重不认真而产生较为明显的重复值。虽然已经进行查重,但是由于数据中已存在的记录不够详细,所以又重新收集了一次数据,导致产生重复值。集中收集或分散收集时,数据主体不一致造成数据重复。因为数据采集、存储设备发生故障等非人为原因而造成数据重复。字段信息校验重复值会产生的影响重复值可能会影响分析结果的正确性。重复值的存在会占用存储空间。重复值中不规范,甚至是错误的数据会影响分析结果的准确性。重复值会影响数据的分布,同时会造成预测结果偏移。字段信息校验由于存在重复值,所以当合并不同来源的数据时,字段可能存在以下3种不一致的问题。同名异义异名同义单位不统一字段信息校验同名异义两个名称相同的字段所代表的实际意义不一致。数据源A中的Number字段和数据源B中的Number字段分别描述货物编号和订单编号,即描述不同的实体Number(A)Number(B)1004538109101600016210045383061016000175100453842542380003391004538333423800034810045380074238000256字段信息校验异名同义两个名称不同的字段所代表的实际意义是一致的。数据源A中的Sold_dt字段和数据源B中的Sales_dt字段都描述销售日期,即Sold_dt=Sales_dt。Sold_dtSales_dt2025/7/012025/7/012025/7/032025/7/032025/7/102025/7/102025/7/152025/7/152025/7/242025/7/24字段信息校验单位不统一两个名称相同的字段所代表的实际意义一致,但是使用的单位不一致。数据源A中Gold_coins字段的单位为人民币,而数据源B中Gold_coins字段的单位为欧元。Gold_coins(A)Gold_coins(B)49.56.343456.97.291743.05.510480.610.328867.28.6116缺失值校验缺失值是指数据中由于缺少信息而造成的数据集中某个或某些特征的值不完全。根据缺失值的分布模式,可以分为完全随机缺失、随机缺失和完全非随机缺失3种情况。对数据进行缺失值校验是为了找出数据中的缺失值,从而针对缺失值进行相关处理。缺失值校验1.缺失值产生的原因有些数据暂时无法获取,或获取数据的代价太大。有些数据被遗漏。可能是由于未输入、忘记填写或对数据理解错误等一些人为因素而遗漏,也可能是由于数据采集设备的故障、存储介质的故障、传输媒体的故障等非人为因素而遗漏。属性值不存在。在某些情况下,缺失值并不意味着数据有错误。对一些对象来说某些属性值是不存在的,如一个未婚者的配偶姓名、一个儿童的固定收入等。缺失值校验2.缺失值的影响数据分析建模时将丢失大量有用信息。数据分析模型所表现出的不确定性将更加显著,模型中蕴含的规律将更难把握。包含空值的数据会使建模过程陷入混乱,导致不可靠的输出。缺失值校验3.缺失值的校验在Python中,可以利用缺失值校验函数或方法检测数据中是否存在缺失值。函数或方法名函数或方法功能使用格式isnull用于判断是否为缺失值pandas.DataFrame.isnull()或pandas.isnull(obj)notnull用于判断是否为非缺失值pandas.DataFrame.notnull()或pandas.notnull(obj)count用于计算非缺失值pandas.DataFrame.count(axis=0,level=None,numeric_only=False)缺失值的校验Python缺失值校验函数或方法的常用参数及其说明。函数或方法名参数名参数说明isnullobj接收标量或类似数组。表示检查对象是否为缺失值。无默认值notnullobj接收数组或对象值。表示检查对象是否为非缺失值。无默认值countaxis接收int。表示所要应用的功能的轴,可选0和1。默认值为0level接收int类型的值或索引名。表示标签所在级别。默认值为Nonenumeric_only接收bool类型的值。表示计数对象仅包含float、int或bool类型的数据。默认值为False缺失值的检验对下表的数据(表中空白处表示缺失值)进行缺失值、非缺失值的识别,并进行缺失率统计。编号x1x2x32006914615.3176620158639
3582208943
56.7486120547323
2589
1546/p>
33.81975异常值校验异常值是指样本中的个别数值明显偏离所属样本的其余观测值。在实际测量中,异常值的产生一般是由疏忽、失误或突然发生的意外造成的,如读错、记错、仪器示值突然跳动、突然震动、操作失误等。异常值校验是检验数据是否有录入错误,以及是否有不合常理的数据。异常值校验1.简单统计量分析可以先对变量做一个描述性统计,进而查看哪些数据是不合理的。最常用的统计量是最大值和最小值,用来判断这个变量的取值是否超出了合理的范围。如客户年龄的最大值为199岁,则该变量的取值存在异常。简单统计量分析Python异常值检测函数或方法。函数或方法名函数或方法功能使用格式percentile用于计算百分位数numpy.percentile(a,q,axis=None,out=None,overwrite_input=False,interpolation='linear',keepdims=False)mean用于计算平均值pandas.DataFrame.mean(axis=None,skipna=None,level=None,numeric_only=None,**kwargs)std用于计算标准差pandas.DataFrame.std(axis=None,skipna=None,level=None,ddof=1,numeric_only=None,**kwargs)简单统计量分析Python异常值检测函数或方法的常用参数及其说明。函数或方法名参数名参数说明percentilea接收array_like(类数组)。表示输入数组或可以转换为数组的对象。无默认值q接收浮点类型的array_like。表示要计算的百分位数或百分位数的序列,必须在0~100之间(含0和100)。无默认值axis接收int类型的值、int元组、None。表示计算百分位数的一个或多个的轴。默认值为Nonemeanaxis接收int类型的值。表示所要应用的功能的轴,可选0和1。默认值为Noneskipna接收bool类型的值。表示排除缺失值。默认值为Nonelevel接收int类型的值或级别名称。表示标签所在级别。默认值为Nonestdaxis接收int类型的值。表示所要应用的功能的轴,可选0和1。默认值为Noneskipna接收bool类型的值。表示排除缺失值。默认值为Nonelevel接收int类型的值或级别名称。表示标签所在级别。默认值为Noneddof接收int类型的值。表示Delta的自由度。默认值为1异常值校验2.3σ原则和IQR准则如果数据服从正态分布,那么在3σ原则下,异常值被定义为一组测定值中与平均值的偏差超过3倍标准差的值。在正态分布的假设下,出现距离平均值3σ之外的值的概率为,属于极个别的小概率事件。如果数据不服从正态分布,那么在四分位距准则(IQR)下,异常值被定义为小于QL-1.5IQR或大于QU+1.5IQR的值。其中,QL为下四分位数,QU为上四分位数,IQR为是上四分位数QU与下四分位数QL之差。3σ原则和IQR准则使用IQR准则和原则可以检测ary中的异常值,返回为异常值的元素,并计算元组ary中异常值所占的比例,计算结果如下表。ary=(9999,57,68,52,79,43,55,94,376,4581,3648,70,51,38)检测方法检测的异常值异常值比例IQR准则[9999,4581,3648]0.21428571428571427原则[9999]0.07142857142857142异常值校验3.箱形图分析箱线图依据实际数据绘制,真实、直观地表现出了数据分布的本来面貌,且没有对数据做任何限制性要求,其判断异常值的标准以四分位距准则为基础。异常值通常不能对四分位距准则施加影响,所以箱线图识别异常值的结果比较客观,因此在识别异常值方面具有一定的优越性。箱形图分析在便利店的销售额数据中可能会出现缺失值和异常值如下表。通过pandas库的describe()方法可以查看数据的基本情况。时间2025/05/012025/05/022025/05/032025/05/042025/05/05销售额(元)732135716501980
统计指标统计指标的值统计指标统计指标的值count9125%859mean1557.95604450%1440std835.07556475%2016.5min155max5390箱形图分析箱形图可以更直观地展示便利店销售额数据,并且可以检测异常值。箱形图中超过上界的两个销售额数据4450.0和5390.0为异常值。数据漂移校验1.数据漂移的核心类型数据漂移的本质是“数据关系和数据本身的非预期变化”。根据变化的对象不同,可分为目标漂移、特征漂移和概念漂移三大类,三者的影响范围与应对策略存在显著差异。漂移类型定义典型实例目标漂移模型要预测的目标变量自身分布发生非预期变化,与输入特征的分布及映射关系无关电商平台“用户购买转化率”(目标变量):因节日大促结束,转化率骤降特征漂移特征与特征的关系未变,仅单特征分布偏移外卖平台“订单配送距离”特征:因城市区域扩张,中位数从3公里升至5公里概念漂移特征与标签之间的映射关系发生变化(特征分布可能不变,但“特征→标签”的逻辑失效)短视频平台“视频播放量”与“用户留存率”:原“播放量高→留存率高”,因低质爆款视频增多,变为“播放量高→留存率低”数据漂移校验2.数据漂移的主要成因数据漂移并非偶然发生,通常与数据源、业务逻辑的变化直接相关。数据源变化:数据源接口调整导致字段缺失、格式变更,或数据采集工具故障引入异常值。业务逻辑变化:业务规则更新、用户群体变迁,市场趋势转移,都会改变数据分布。数据漂移校验3.数据漂移的常用检测方法数据校验中需通过主动检测及时发现数据漂移问题,常用的数据漂移检测方法分为三类。统计检验法通过统计指标量化“新数据”与“基准数据”的分布偏移程度,适用于特征漂移的直接校验。关键指标监控按周对特征的核心统计指标进行实时跟踪,当指标超出预设阈值时触发告警。模型性能关联分析将模型性能指标下降与数据特征漂移进行关联排查,通过反向追溯定位问题根源。数据校验数据特征分析数据特征分析当对数据进行校验后,可以通过绘制图表、计算某些特征量等手段进行数据特征分析,从而从数据中挖掘出所需的信息。描述性统计分析分布分析对比分析周期性分析贡献度分析相关性分析描述性统计分析1.集中趋势度量集中趋势是指总体中各单位的数量分布从两边向中间集中的趋势,用于对比同类现象在不同的时间、地点和条件下的一般水平,反映同一总体的某类现象在不同时间下变化的规律性,分析现象之间的依存关系。其中,平均水平的指标是对个体集中趋势的度量。均值均值为所有数据的平均值中位数将一组观测值从小到大进行排列,位于中间的数据就是中位数众数众数是指数据集中出现最频繁的值,是可以表示集中程度的统计特征数描述性统计分析2.离中趋势度量离中趋势是指总体中各单位标志值背离分布中心的规模或程度,用于衡量和比较均值的代表性、反映社会经济活动过程的均衡性和节奏性、衡量风险程度。其中,变异程度的指标是对个体离开平均水平的度量。离中趋势度量
极差可度量数据的离散程度,对数据集的极端值非常敏感,并且忽略了位于最大值与最小值之间的数据是如何进行分布的。标准差可度量数据偏离均值的程度。变异系数可度量标准差相对于均值的离中趋势,主要用于比较两个或多个具有不同单位或不同波动幅度的数据集的离中趋势。
离中趋势度量四分位数包括上四分位数和下四分位数。将所有数值由小到大排列并分成四等份处于第一个分割点位置的数值是下四分位数处于第二个分割点位置(中间位置)的数值是中位数处于第三个分割点位置的数值是上四分位数四分位数间距是上四分位数QU与下四分位数QL之差,这个区间包含了全部观测值的二分之一。其值越大,说明数据的变异程度越大;反之,说明变异程度越小。离中趋势度量pandas库的describe()方法可以给出一些基本的统计量,包括均值、标准差、最大值、最小值、四分位数等。pandas.DataFrame.describe(percentiles=None,include=None,exclude=None,datetime_is_numeric=False)参数名称参数说明percentiles接收int类型的值。表示要包含在输出中的百分比,取值范围为0~1。默认值为Noneinclude接收类似dtype的列表。表示包含在结果中的数据类型的白名单。默认值为Noneexclude接收类似dtype的列表。表示从结果中忽略的数据类型的黑名单。默认值为Nonedatetime_is_numeric接收bool类型的值。表示是否将datetimedtypes视为数字。默认值为False离中趋势度量以某服装店的服装销量数据为例,部分数据如下。描述性统计分析结果如下。日期服装类型销量(件)日期服装类型销量(件)2025/9/01短裤1232025/9/06衬衫232025/9/02半身裙2312025/9/07马甲62025/9/03T恤1252025/9/08背心1352025/9/04牛仔裤982025/9/09卫衣72025/9/05风衣5………………统计量名称值统计量名称值统计量名称值count1525%14.5range340mean123.66666750%123var0.947737std117.20352775%197dis182.5min5max345
描述性统计分析3.YData-profilingYData-profiling是一款专为数据探索性分析(EDA)与数据质量评估设计的Python库。它能通过一行代码自动生成交互式HTML报告,涵盖数据统计、分布特征、质量问题、相关性分析等核心信息,可帮助使用者快速理解数据集并定位问题。YData-profiling主要特点类型推断警告变量分析时间序列文件和图像分析比较数据集灵活的输出格式YData-profilingYData-profiling的语法YData-profiling的基本使用格式可分为“创建报告对象”和“输出/展示报告”两个核心步骤。YData-profiling可以使用ProfileReport类语法创建报告对象。ProfileReport(df,title,minimal=False,samples=None,config=None,explorative=False)YData-profilingYData-profiling的语法ProfileReport类常用的部分参数及其说明。参数名称说明df接收DataFrame类型的值。表示待分析的数据集,为必选参数,无默认值title接收str类型的值,表示设置报告的标题,显示在HTML报告顶部。无默认值minimal接收bool类型的值,表示是否启用精简模式。若为True,生成简化版报告(减少计算量,适合百万行以上大数据集),仅保留核心统计和质量检测。默认值为Falsesamples接收dict类型的值或None,表示配置数据采样,可避免全量计算,提升性能。通过字典指定采样规则,如head:保留前N行;tail:保留后N行;random:随机采样N行。默认值为Noneconfig接收dict、Config对象或None,表示高级配置,通过字典或配置文件自定义分析逻辑,支持禁用特定分析模块,如相关性、缺失值;调整可视化样式,如直方图bins数量;设置质量检测阈值,如缺失值比例告警阈值。默认值为Noneexplorative接收bool类型的值,表示是否启用探索模式,若为True,启用探索性模式(增加深度分析,如多变量交互、更详细的分布检验),适合复杂数据集。默认值为FalseYData-profilingYData-profiling的语法生成ProfileReport对象后,用户可对其进行输出或展示报告,ProfileReport对象的常用方法及说明。方法名称说明to_file(filepath)将报告保存为文件,支持HTML、JSON格式,默认HTMLto_widgets()在JupyterNotebook/Lab中直接显示交互式报告,无需保存文件to_json(filepath)将报告数据导出为JSON格式,供自动化系统解析,如提取统计指标compare(other)对比当前报告与另一个ProfileReport对象,如训练集vs测试集,生成差异报告分布分析1.定量数据的分布分析对于定量数据,选择组数和组距是做频率分布分析时最主要的问题。对定量数据做分布分析时,一般按照以下步骤进行。求极差。决定组距与组数。决定分布区间。列出频率分布表。绘制频率分布直方图。定量数据的分布分析决定组距与组数时需遵循以下主要原则。各组之间必须是相互排斥的。所有的数据必须包含在内。各组之间的组距最好相等。定量数据的分布分析某品牌沐浴露在2025年1月份销售数量的部分数据,需要根据该数据绘制销售数量的频率分布表、频率分布直方图,并对该定量数据做出相应的分析。日期销售数量(瓶)日期销售数量(瓶)2025/1/12542025/1/61252025/1/25462025/1/71982025/1/36422025/1/86572025/1/43512025/1/910682025/1/52352025/1/10254定量数据的分布分析某品牌沐浴露销售数量分析实现步骤求极差决定组距与组数决定分布区间分布区间分布区间分布区间分布区间[0,170)[170,340)[340,510)[510,680)[680,850)[850,1020)[1020,1190)[1190,1360)定量数据的分布分析绘制频率分布直方图某品牌沐浴露销售数量分析实现步骤(续)列出频率分布表组段组中值x频数频率f累计频率[0,170)8546.67%6.67%[170,340)2551016.67%23.33%[340,510)4251016.67%40%[510,680)5951321.67%61.67%[680,850)7651525%86.67%[850,1020)93535%91.67%[1020,1190)110523.33%95%[1190,1360)127535%100%分布分析2.定性数据的分布分析对于定性数据,常根据数据的分类类型进行分组,可以采用饼图和柱形图对定性数据进行分布分析。以某餐馆的各菜系在某段时间内的销售额为例,采用定性数据的分布分析方法进行分析。该餐馆各菜系销售额的部分数据如下。日期菜系销售额(元)2025/1/1川菜23562025/1/1苏菜56252025/1/1粤菜16872025/1/1闽菜46232025/1/1鲁菜3574定性数据的分布分析各菜系销售额分布(条形图)各菜系销售额分布(饼图)对比分析对比分析是指将两个相互联系的指标进行比较。适用于指标间的横纵向比较分析、时间序列的比较分析。在对比分析过程中,选择合适的对比标准是十分关键的步骤。若选择合适,则可以做出客观的评价若选择不合适,则评价时可能会得出错误的结论对比分析对比分析的主要形式绝对数比较:绝对数比较是利用绝对数进行对比,从而寻找差异的一种方法。相对数比较:相对数比较是将两个相互联系的指标进行对比计算的一种对比方法,用于反映客观现象之间的数量联系程度,其数值表现为相对数。相对数比较结构相对数比例相对数比较相对数强度相对数计划完成程度相对数动态相对数对比分析以某公司各部门销售额为例进行对比分析,部分数据如下表。月份销售部事业部月份销售部事业部1月1.62.16月6.35.12月3.84.57月3.23.83月4.95.78月5.76.24月2.73.69月7.57.95月5.44.310月4.63.7对比分析绘制不同部门各月份和销售部各年份各月份的销售额对比情况折线图。周期性分析周期性分析是探索某个变量是否随着时间变化而呈现出某种周期性变化趋势。时间跨度相对较长的周期性趋势有年度周期性趋势、季节性周期趋势,相对较短的有月度周期性趋势、周度周期性趋势,甚至更短的有天周期性趋势、小时周期性趋势。周期性分析以某景区2025年3月份的人流量数据为例,部分人流量数据。日期人流量日期人流量2025/3/174852025/3/687542025/3/2102432025/3/791452025/3/3142112025/3/894512025/3/485412025/3/9144422025/3/594522025/3/1013471周期性分析根据人流量数据绘制时序图,并分析景区人流量的变化趋势。该景区在2025年3月份内,日人流量呈现出周期性的趋势,以周为周期。在周末(即非工作日),景区的人流量比工作日的人流量大。贡献度分析贡献度分析又称帕累托分析,贡献度分析的原理是帕累托法则(又称二八定律),即同样的投入放在不同的地方会产生不同的效益。例如,对于一个公司,其80%的利润常来自于20%最畅销的产品,而其他80%的产品只产生了20%的利润。贡献度分析以服装企业为例,贡献度分析可分析出占盈利额80%的服装类型,然后重点发展相关的部门,而分析出的结果还可通过帕累托图直观地呈现出来。某服装企业的秋装盈利数据如下。服装编号服装类型盈利额(元)服装编号服装类型盈利额(元)20095开衫874220096西装386120097衬衫768520092半身裙301620093毛衣681220094长袖衫235820091牛仔裤597220099卫衣194220098连衣裙483220090连体裤1324贡献度分析从开衫到半身裙,这7个服装类型占服装总类数的70%,其盈利额占总盈利额的87.9168%。根据帕累托法则,应该增加从开衫到半身裙这7个服装类型的成本投入,减少从长袖衫到连体裤这3个服装类型的成本投入,以实现更高的盈利额。相关性分析1.直接绘制散点图判断两个变量是否具有线性相关关系最直接的方法是绘制散点图。相关性分析2.绘制散点图矩阵当需要同时考察多个变量间的相关关系时,逐一绘制变量间的散点图将会十分麻烦。此时可利用散点图矩阵同时绘制各变量间的散点图,从而快速发现多个变量间的主要相关性,这在进行多元线性回归时显得尤为重要。相关性分析3.计算关系系数为了更加准确地描述变量之间的线性相关关系,可以通过计算相关系数来进行相关性分析。在二元变量的相关性分析过程中比较常用的相关系数如下。Pearson相关系数Spearman相关系数判定系数计算关系系数Pearson相关系数Pearson相关系数一般可用于分析两个连续性变量之间的关系。相关系数的取值范围为,其中:表示存在不同程度的线性相关关系,其中:计算关系系数Spearman相关系数Pearson相关系数要求连续变量的取值服从正态分布。不服从正态分布的变量、分类或等级变量之间的关联性可采用Spearman相关系数(也称等级相关系数)来描述。对两个变量成对地取值并分别按照从小到大(或从大到小)的顺序编秩,Ri代表xi的秩次,Qi代表yi的秩次,为xi、yi的秩次之差。计算关系系数Spearman相关系数一个变量的秩次的计算过程如下。xi从小到大排序从小到大排序时的位置秩次Ri0.5110.8221.0331.24(4+5)/2=4.51.25(4+5)/2=4.52.3662.877计算关系系数Spearman相关系数因为一个变量相同的取值必须有相同的秩次,所以在计算中采用的秩次是变量所在位置的平均值。而如果两个变量具有严格单调的函数关系,那么这两个变量就是完全Spearman相关的。与Pearson相关不同,Pearson相关只有在变量具有线性关系时才是完全相关的。Spearman和Pearson这两种相关系数在实际应用计算中都要进行假设检验,使用t检验方法可检验其显著性水平以确定其相关程度。研究表明,在正态分布的假设下,Spearman相关系数与Pearson相关系数在效率上是等价的,而对于连续测量的数据,用Pearson相关系数来进行分析更合适。计算关系系数判定系数判定系数是相关系数的平方,可用表示,用于衡量回归方程对y的解释程度。判定系数的取值范围为。越接近于1,表明两个变量之间的相关性越强;越接近于0,表明两个变量之间越没有直线相关关系。计算关系系数判定系数pandas库的corr()方法可计算出列与列、变量与变量之间的成对相关系数,但不包括空值。corr()方法的基本使用格式如下。pandas.DataFrame.corr(method='pearson',min_periods=1)corr()方法常用的参数及其说明如下。参数名称参数说明method接收方法的名称。表示计算相关系数要使用的方法,可选pearson、kendall、spearman。默认值为pearsonmin_periods接收int类型的值。表示每对列必须具有有效结果的最小观测数。默认值为1计算关系系数判定系数餐饮系统中含有不同菜品的日销量数据,分析这些菜品销量之间的相关性可以得到不同菜品之间的关系,如是替补菜品、互补菜品或没有关系,为采购原材料提供参考。示例数据如下表。日期粉蒸排骨玻璃菜心翡翠香饺酱香凤爪铁板烧
豆腐原味
菜心蜜汁
盐焗鸡香煎年糕生煎晶饺佛跳墙2025/6/12610935261513810262025/6/218141740291614612192025/6/312912291994913242025/6/481453227691515152025/6/514121924211411121122计算关系系数判定系数计算菜品“铁板烧豆腐”与其他菜品是否存在关系。菜品“铁板烧豆腐”与“粉蒸排骨”“翡翠香饺”“原味菜心”“香煎年糕”“生煎晶饺”“佛跳墙”等菜品的相关性比较低,与“玻璃菜心”“酱香凤爪”“蜜汁盐焗鸡”等菜品的相关性较高。菜品名称相关系数菜品名称相关系数粉蒸排骨0.284106原味菜心0.234203玻璃菜心0.711998蜜汁盐焗鸡0.741757翡翠香饺-0.246246香煎年糕-0.167600酱香凤爪0.833686生煎晶饺0.080094铁板烧豆腐1.000000佛跳墙-0.498782小结本章从数据校验和数据特征分析两个方面对数据进行探索。介绍了数据校验中的一致性校验、缺失值校验、异常值校验和数据漂移校验。介绍了数据特征分析中的描述性统计分析、分布分析、对比分析、周期性分析、贡献度分析和相关性分析,并结合了相应小案例进行演示。数据预处理数据清洗数据变换数据合并自动化预处理数据清洗数据清洗主要是删除原始数据集中的重复数据,平滑噪声数据,筛选掉与分析主题无关的数据,处理重复值、缺失值和异常值等。重复值处理缺失值处理异常值处理重复值处理1.记录重复记录重复是指数据中某条记录的一个或多个属性的值完全相同。在某企业的母婴用品发货记录表中,包括母婴用品名称、品牌名称两个属性。为查看所有品牌名称,可利用列表(list)去重可以利用集合(set)的特性(元素唯一)去重得到的结果是:去重前的品牌总数为697,去重后的品牌总数为14。代码冗长数据的排列顺序发生改变?记录重复pandas库提供了一个名为drop_duplicates()的去重方法,此方法只对DataFrame或Series类型的数据有效。drop_duplicates()方法的基本使用格式如下。pandas.DataFrame.drop_duplicates(subset=None,*,keep=‘first’,inplace=False,ignore_index=False)参数名称参数说明subset接收字符串或序列。表示进行去重的列。默认值为Nonekeep接收特定字符串。表示存在重复值时保留第几个数据。first:保留第一个。last:保留最后一个。false:只要重复都不保留。默认值为firstinplace接收bool类型的值。表示是否在原表上进行操作。默认值为False记录重复利用drop_duplicates()方法对母婴用品发货记录表中的品牌名称进行去重操作。利用drop_duplicates()方法去重利用drop_duplicates()方法对多列去重创建数组对象2.属性内容重复属性内容重复是指数据中存在两个或多个属性,它们的名称不同,但数据完全相同。当需要去除连续型重复属性时,可以利用属性间的相似度,去除两个相似度为1的属性的其中一个。在pandas库中计算相似度的方法有corr()方法,该方法支持pearson、spearman和kendall这3种计算相似度的方法,可以通过method参数调节,默认值为pearson。属性内容重复利用kendall法求出母婴用品发货记录表中“仓库标签”属性和“品牌标签”属性的相似度矩阵,得到的相似度矩阵如下。通过相似度矩阵去重存在一个弊端,该方法只能对数值型重复属性去重,类别型属性之间无法通过计算相关系数来衡量相似度,因此无法根据相似度矩阵对其进行去重处理。
仓库标签品牌标签仓库标签1.000000-0.003389品牌标签-0.0033891.000000属性内容重复使用pandas库的DataFrame.equals()方法进行属性去重。DataFrame.equals()方法的基本使用格式如下。pandas.DataFrame.equals(other)DataFrame.equals()方法常用的参数及其说明如下。参数名称参数说明other接收Series或DataFrame。表示要与第一个内容进行比较的另一个Series或DataFrame。无默认值属性内容重复使用DataFrame.equals()方法进行属性去重,得到的前两行两列的属性矩阵如下。再通过遍历的方式筛选出完全重复的属性。得到的结果是:需要删除的列是[],删除多余列后data的属性数目为5。
母婴用品名称品牌名称母婴用品名称TrueFalse品牌名称FalseTrue缺失值处理1.拉格朗日插值法拉格朗日插值法的基本实现步骤如下。确定原始数据中的因变量和自变量。取缺失值前后各k个数据,将剔除缺失值后的2k个数据组成一组,再将剩下的数据依次排序,并基于拉格朗日插值多项式,对全部缺失值依次进行插补。缺失值处理2.牛顿插值法牛顿插值法的基本实现步骤如下。计算差商。计算牛顿插值多项式。利用所得多项式计算所需插入缺失部分的值。牛顿插值法也是多项式插值,但采用了另一种构造插值多项式的方法,与拉格朗日插值法相比,牛顿插值法具有承袭性和易于变动节点的特点。从本质上来说,两者给出的结果是一样的,只不过表示的形式不同。因此,在Python的SciPy库中,只提供了拉格朗日插值法的函数,而如果要使用牛顿插值法,则需要自行编写函数。牛顿插值法以某便利店一段时间的销售额数据为例,数据示例如下表。根据拉格朗日插值法,使用缺失值前后各5个未缺失的数据对2025年5月5日的数据进行插补。插值后的结果如下。时间2025/05/012025/05/022025/05/032025/05/042025/05/052025/05/06销售额(元)732135716501980
1170时间2025/05/072025/05/082025/05/092025/05/102025/05/112025/05/12销售额(元)6006871570165021191383时间原始值插值2025/05/05
1806.928571异常值处理异常
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 都昌县选调县内教师笔试真题2025
- 2023年6月卫生资格考试呼吸内科肺水肿预防同步练习题及答案
- 吉林省省直事业单位招聘笔试真题2025
- (正式版)DB34∕T 4215-2022 《大水面鳙鱼暂存提质技术规程》
- 河南省南阳市卧龙区2025-2026学年六年级下册期中考试语文试卷(1-4单元)含答案
- 2025-2026学年江苏省南京市某中学七年级(下)期末英语模拟试卷(含答案)
- 湘教版八年级地理下册期末测评练习题
- 2025届高考语文漫画类作文(试题呈现+审题指导+立意参考+高分范文)
- 2026年历史考试真题答案全解
- 基础化学知识考核题目和答案
- 2026年中小学教师(语文)副高级职称评审答辩题库及答案
- 学校管理与教师专业发展手册
- 初中音乐七年级上册《美丽的草原我的家》深度鉴赏与跨文化理解教案
- 2026秋新人教版英语五年级上册单元一Unit 1 Different friends测试卷-提高卷附答案(文档中已插入听力音频)
- 2026年餐饮服务食品安全管理员试题及答案
- GB/T 47950-2026资产管理数据资产登记指南
- 2026版《医师外出会诊管理暂行规定》课件
- 影像医学技术操作规程大全
- 2026年河南高考地理考试试卷及答案
- 中国老年抗中性粒细胞胞浆抗体相关肾小球肾炎治疗指南总结2026
- 2026版中华人民共和国生态环境法典深度解析课件
评论
0/150
提交评论