系统驱动文件缺失-()

来源:191路由网 2022-12-19 13:07:39

()

使用 Pandas 处理缺失数据的综合指南

在每个现实世界的数据集中,丢失数据值几乎是不可避免的,在典型的数据收集过程中几乎不可能避免。

这可能由于各种原因而发生,例如数据输入过程中的错误、数据收集过程中的技术问题、文件丢失/损坏以及许多其他原因。

在任何现实世界的数据集中,通常都会有一些数据科学家和机器学习工程师必须处理的缺失数据,否则,它可能会导致开发数据管道时出现一些问题。

因此,在这篇文章中,我将展示一些可用于处理数据驱动项目中丢失数据的技术,并可能消除在构建数据管道时丢失数据可能导致的问题。

让我们开始!


为什么你应该处理丢失的数据

在继续如何解决问题之前,必须首先了解为什么需要处理丢失的数据。

数据确实是所有数据科学和机器学习项目的主要驱动力。 它是机器做出所有决定的所有项目的核心要素。

虽然缺失数据的存在确实令人沮丧,但从数据集中彻底消除它可能并不总是正确的方法。 例如,考虑下图。

如果您考虑消除所有至少有一个缺失值的行,它:


#1 减少数据集中的数据点数量

如下图所示,完全拒绝包含任何缺失值的行会显着减少数据集中的行数。

#2 导致我们已经拥有的其他有价值(和正确)信息的丢失

例如,在上面的 DataFrame 中,即使没有观察到中间行 ColB 的值,我们仍然可以精确地知道 colA 和 colB 中的对应值,这对于数据管道仍然非常有价值。


处理缺失数据

现在您已经了解了为什么要处理缺失数据,让我们了解处理缺失数据的技术方面。

每当您在表格数据中遇到缺失值时,您基本上只有三个选项可供选择,如下图所示:

下面让我们详细讨论这三种方法。


#1 保留缺失的数据

顾名思义,这种方法绝对忽略了数据集中任何缺失数据点的存在。

在这种情况下,数据集转换方法返回原始数据集的副本,如下图所示:

然而,在这里,本质上假设丢失的数据点不会在数据管道中造成任何问题,并且所利用的方法擅长处理丢失的数据。

因此,数据科学家或机器学习工程师的工作是决定如果丢失的数据保持原样,他们的算法是否可以工作。

下面定义了保持丢失数据不变的方法。 我们定义了函数 handle_missing_data() ,它将源 DataFrame 作为参数并在不转换的情况下返回它。

如上面的实现所示,原始 DataFrame 保持不变。


#2 删除缺失的数据

接下来,想象一下,如上所述,保留丢失的数据对于您的特定用例是不可行的。

在这种情况下,完全删除丢失的数据可能是一个继续前进的方向。

这里的主要想法是从 DataFrame 中删除具有任何缺失值的整行(或如果您的用例需要基于系列的分析,则为一列)。

换句话说,在这种技术中,您只保留那些具有对应于每一列(或行)的非空值的数据行(或列),并将数据集视为删除的行从未存在过。


逐行丢弃

顾名思义,这里的目标是删除包含缺失值的 DataFrame 行。

下图描绘了逐行下降。

在面向行的删除中,列数保持不变。


逐列下降

与逐行删除相比,逐列删除涉及删除包含缺失值的 DataFrame 的列(或系列)。

在面向行的删除中,行数保持不变。


执行

与上面讨论的保留缺失数据的策略类似,接下来电脑,我们将实现 handle_missing_data() 函数从 DataFrame 中删除具有缺失值的行(或列)。

您可以使用 dropna() 方法从 DataFrame 中删除行,如下所示:

axis 参数指定要从 DataFrame 中删除缺失值的方向(按行或按列)。

axis=0 执行面向行的删除。 如下所示:

axis=1 执行面向列的删除,如下面的代码块所示:


#3 填补缺失的数据

最后一种技术涉及用一些值填充缺失的数据,该值可能是给定未观察位置的最佳估计值,如下所示。

电脑

该策略可能涉及用列的平均值、中值或列的最频繁值(众数)填充缺失数据——具体取决于列中值的类型。

这是因为平均值、中位数和众数只能针对数值进行估计。 但是,在分类列的情况下,均值和中位数没有意义。

此外,填充标准完全取决于您的特定数据源、您要解决的问题以及评估该特定缺失数据点的舒适程度。


执行

寻找缺失值的最佳估计值的最常用技术包括均值、中值和众数,如下所示:

用平均值填充:

均值策略用列的平均值替换缺失值。

如上所述,均值策略没有替换 colB 中的任何缺失值。

填充中位数:

接下来,中值策略将列中的缺失值替换为中值。 这是在下面实现的:

电脑再一次,最初从 colB 中丢失的值仍然用 NaN 值填充。

填充模式:

最后,用众数填充,将缺失值替换为列中出现频率最高的值,如下所示:

您还可以对不同的列应用不同的填充策略,如下所示:

在这里,我们用 colA 的平均值和 colB 中的众数填充 colA 中的缺失值。


结论

最后,在这篇文章中,我演示了如何处理 Pandas DataFrame 中的缺失数据。 具体来说,我们研究了为什么处理缺失数据对您的数据管道至关重要,然后介绍了处理缺失数据的常用策略。

在处理缺失数据时,您应该记住,我们在本文中讨论的三种方法(保持、丢弃和填充)中没有正确的方法。 这是因为每种情况都不同。

根据情况需要,始终由您决定选择哪种具体方法。

谢谢阅读!

关注七爪网,获取更多APP/小程序/网站源码资源!


电脑
点击展开全文

相关阅读

微星怎么win7系统-(微星怎么装win7)

(微星怎么装win7)电脑最近,有朋友反映遇到了win7主板微星系统还原后提示您的账户已被停用了,这时候我们进入安全模式,然后在计算机管理的用户中取消勾选禁用就可以了,下面一起来看一下具体的操作方法吧。win7主板微星系统还原后提示您的账户已被停用解决方法1、首先我们重启电脑,然后在开机时按下“F8”...

2022-12-19

系统驱动文件缺失-()

()使用Pandas处理缺失数据的综合指南在每个现实世界的数据集中,丢失数据值几乎是不可避免的,在典型的数据收集过程中几乎不可能避免。这可能由于各种原因而发生,例如数据输入过程中的错误、数据收集过程中的技术问题、文件丢失/损坏以及许多其他原因。在任何现实世界的数据集中,通常都会有一些数据科学家和机器学习工程师必须处理的缺失数...

2022-12-19

苹果电脑开不机安装win7系统-(苹果电脑开不机安装win7系统可以吗)

(苹果电脑开不机安装win7系统可以吗)有粉丝发了过来,问我:“iMac2020款MacBookpro2019款,网友求助:安装不了Windows11!”于是,我问:“你苹果的系统为什么要装windows的系统呢?不习惯吗?”他:不是说苹果的...

2022-12-19

win10重置网络ip-(win10重置网络后适配器不见了)

(win10重置网络后适配器不见了)电脑无论何时申请上网服务,互联网服务提供商(ISP)都会提供所需的网络设置(包括域名系统(DNS)地址),用户可以使用这些设置来加载喜欢的网站、访问在线服务以及下载文件。但是,它们的DNS服务器往往速度较慢,有时不可靠,并且不是很私密。这时,你可以使用第三方公司提供的其他解析程序来改善Wind...

2022-12-19

燃7000bios改启动盘-(燃7000u盘启动)

(燃7000u盘启动)笔记本电脑在如今仍然是不可或缺的产品,因为产品种类的不同,所以在价格上也有着很大的出入,那么有没有价格不高,性价比不错的电脑呢?其实6000元价位段的电脑是大众选择最多的,既能满足办公功能又可以实现轻娱乐,属实是不错的选择。那么接下来笔者就给大家整理了几款6000元左右的笔记本给...

2022-12-19

191路由网 - 192.168.1.1,192.168.0.1无线路由器设置教程

版权声明:本站的文章和图片来自互联网收集,仅做分享之用如有侵权请联系站长,我们将在24小时内删除