pandas 使用均值填充缺失值列的小技巧分享

yipeiwu_com6年前Python基础

pd.DataFrame中通常含有许多特征,有时候需要对每个含有缺失值的列,都用均值进行填充,代码实现可以这样:

for column in list(df.columns[df.isnull().sum() > 0]):
  mean_val = df[column].mean()
  df[column].fillna(mean_val, inplace=True)

# -------代码分解-------
# 判断哪些列有缺失值,得到series对象
df.isnull().sum() > 0
# output
contributors           True
coordinates            True
created_at            False
display_text_range        False
entities             False
extended_entities         True
favorite_count          False
favorited            False
full_text            False
geo                True
id                False
id_str              False
...

# 根据上一步结果,筛选需要填充的列
df.columns[df.isnull().sum() > 0]
# output
Index(['contributors', 'coordinates', 'extended_entities', 'geo',
    'in_reply_to_screen_name', 'in_reply_to_status_id',
    'in_reply_to_status_id_str', 'in_reply_to_user_id',
    'in_reply_to_user_id_str', 'place', 'possibly_sensitive',
    'possibly_sensitive_appealable', 'quoted_status', 'quoted_status_id',
    'quoted_status_id_str', 'retweeted_status'],
   dtype='object')

以上这篇pandas 使用均值填充缺失值列的小技巧分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django 限制用户访问频率的中间件的实现

一、定义限制访问频率的中间件 common/middleware.py import time from django.utils.deprecation import Mid...

用Python将Excel数据导入到SQL Server的例子

使用环境:Win10 x64 Python:3.6.4 SqlServer:2008R2     因为近期需要将excel导入到SQL Serve...

python实战串口助手_解决8串口多个发送的问题

今晚终于解决了串口发送的问题,更改代码如下: def write(self, data): if self.alive: if self.serSer.isOpe...

python中while和for的区别总结

Python中for循环和while循环本质上是没有区别的,但是在实际应用上,针对性不太一样。 while循环适用于未知循环次数的循环,for循环适用于已知循环次数的循环 。 for主...

对Python中type打开文件的方式介绍

这几天在看《利用Python进行数据分析》,在第六章数据加载、存储、与文件格式中遇到个小问题。 在Linux访问文件是用:!cat ch06/ex1.csv 在Windows命令行中使用...