pandas.DataFrame.fillna( )函数
发布日期:2021-05-15 21:32:12 浏览次数:28 分类:技术文章

本文共 1477 字,大约阅读时间需要 4 分钟。

DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)

功能:使用指定的方法填充NA / NaN值
参数:value : 变量, 字典, Series, or DataFrame
用于填充缺失值(例如0),或者指定为每个索引(对于Series)或列(对于DataFrame)使用哪个字典/Serise/DataFrame的值。(不在字典/Series/DataFrame中的值不会被填充)这个值不能是一个列表。

method : {‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, None}, 默认值 None ; 在Series中使用方法填充空白(‘backfill’, ‘bfill’向前填充,‘pad’, ‘ffill’向后填充)

axis : {0 or ‘index’, 1 or ‘columns’}

inplace : boolean, 默认值 False。如果为Ture,在原地填满。注意:这将修改次对象上的任何其他视图(例如,DataFrame中的列的无复制贴片)

limit : int, 默认值 None; 如果指定了方法,则这是连续的NaN值的前向/后向填充的最大数量。 换句话说,如果连续NaN数量超过这个数字,它将只被部分填充。 如果未指定方法,则这是沿着整个轴的最大数量,其中NaN将被填充。 如果不是无,则必须大于0。

downcast : dict, 默认是 None; 如果可能的话,把 item->dtype 的字典将尝试向下转换为适当的相等类型的字符串(例如,如果可能的话,从float64到int64)

返回:被充满的DataFrame

df = pd.DataFrame([[np.nan,2,np.nan,0],

[3,4,np.nan,1],
[np.nan,np.nan,np.nan,5],
[np.nan,3,np.nan,4]],
columns=list(‘ABCD’))
df
Out[60]:
A B C D
0 NaN 2.0 NaN 0
1 3.0 4.0 NaN 1
2 NaN NaN NaN 5
3 NaN 3.0 NaN 4

将NAN值转换为0

df.fillna(0)

A B C D
0 0.0 2.0 0.0 0
1 3.0 4.0 0.0 1
2 0.0 0.0 0.0 5
3 0.0 3.0 0.0 4

向前或向后传播

df.fillna(method=‘ffill’)

Out[62]:
A B C D
0 NaN 2.0 NaN 0
1 3.0 4.0 NaN 1
2 3.0 4.0 NaN 5
3 3.0 3.0 NaN 4

用字典替换

values = {‘A’: 0, ‘B’: 1, ‘C’: 2, ‘D’: 3}

df.fillna(value=values)

Out[64]:
A B C D
0 0.0 2.0 2.0 0
1 3.0 4.0 2.0 1
2 0.0 1.0 2.0 5
3 0.0 3.0 2.0 4

只替换第一个NAN值

df.fillna(value=values, limit=1)

Out[65]:
A B C D
0 0.0 2.0 2.0 0
1 3.0 4.0 NaN 1
2 NaN 1.0 NaN 5
3 NaN 3.0 NaN 4

转载地址:https://blog.csdn.net/qq_30868737/article/details/108278957 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Python中append和extend的区别
下一篇:关系型数据库与非关系型数据库

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年03月08日 21时53分09秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

php 关键词回复 图片,关于微信公众平台用户发送关键词的回复机制 2019-04-21
php 中 相关文章 的思路,ThinkPHP文章相关阅读功能的实现方法 2019-04-21
php里面什么是u函数,ThinkPHP函数详解:U方法 2019-04-21
下载附带.php,php文件上传及下载附带显示文件及目录功能 2019-04-21
PHP引用全局作用域中可用的全部变量是,$GLOBALS — 引用全局作用域中可用的全部变量... 2019-04-21
fibonacc用matlab,最优化算法实验报告(附Matlab程序) 2019-04-21
matlab hanning和hann,哪位大侠能告知——为什么在MATLAB2012中不能调研(汉宁)窗函... 2019-04-21
oracle跑批效率问题,Oracle生产中跑批存储过程或函数失效原因分析以及解决方案... 2019-04-21
oracle10在w7下提示无法定位,win7系统下提示无法定位程序输入点于动态链接库kernel32.dll如何解决... 2019-04-21
oracle 控制文件没有备份,Oracle 控制文件备份恢复 2019-04-21
oracle++卸载grid,GRID卸载及重新安装 2019-04-21
oracle+存储过程翻页,oracle分页存储过程 oracle存储过程实例 2019-04-21
cx oracle模块,cx_Oracle 模块如何安装 2019-04-21
matlab 求卡方值,谁能用spss或者sas帮我做一个统计数据分析 ,求出卡方值和P值。谢谢!急需!!!!... 2019-04-21
安装oracle后重启电脑很卡,关于linux下安装oracle之后,重启系统后oracle不能正常启动的配置总结... 2019-04-21
citrix linux 服务器,Citrix XenServer中安装CentOS 6.0并配置iSCSI服务 2019-04-21
linux proftpd 用户,Linux 下如何利用proftpd构架一个ftp服务器 2019-04-21
linux指定用户执行crontab,Centos下crontab 指定执行用户 2019-04-21
linux 截屏函数,使用imlib2函数库实现截屏功能 2019-04-21
linux 管理桌面图标,使用GNOME优化工具自定义Linux桌面的10种方法 2019-04-21