只要和数据打交道,就不可能不面对一个令人头疼的问题-数据集中存在空值。空值处理,是数据预处理之数据清洗的重要内容之一。
Python 数据分析包 Pandas 提供了一些便利的函数,可以帮助我们快速按照设想处理、解决空值。
空值处理的第一招:快速确认数据集中是不是存在空值。有两个函数 isnull, notnull,可以帮助我们快速定位数据集中每个元素是否为空值。
说到空值,在 NumPy 中定义为: np.nan,Python 中定义为 None,所以大家注意这种表达方式。这里面有一个坑,就是 Pandas 对象某列或某行,直接拿 np.nan , None 判断元素是否为空,发现返回的都是False。注意:这样做是不可取的!
第二招,假设存在空值,可以使用 Pandas 中的 fillna 函数填充空值,fillna 有一个关键参数: method, 当设置method为 pad 时,表示怎样填充呢? 从上一个有效数据传播到下一个有效数据行。此外,还有一个限制连续空值行的数量的关键字 limit.
第三招,检测到了空值数据,但是不想做任何填充,而是仅仅想丢弃这些空值数据,Pandas 提供了 dropna 函数做这件事情。里面有两个关键参数:axis, how, 例如组合:axis = 0,how =\'any\',表示某行只要某个元素为空值,就丢弃。
以上就是 Pandas 中,空值处理的基本思路。
为了使文章看起来足够简洁,让大家快速了解处理思路,我就不在文中贴代码了,详细的Jupyter 代码,请点击阅读原文,跳转到小编的github库。
推荐阅读:
为人要厚道,做事凭良心。悟天道酬勤,自信:心怀美好,美好即至。近日,细分微信群,仅一步操作,寻与汝同行之人,邀您加入!
本文分享自 程序员郭震zhenguo 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!