method:  pad/ffill:用前一个非缺失值去填充该缺失值,用左边的非缺失值去填充该缺失值

         backfill/bfill:用下一个非缺失值填充该缺失值,用右边的非缺失值去填充该缺失值

         None:指定一个值去替换缺失值(默认这种方式)

limit参数:限制填充个数

axis参数:修改填充方向,默认为纵向填充,axis=1的时候,横向填充

import numpy as np
df = pd.DataFrame( [[np.nan,2,np.nan,np.nan],
[3,4,88,np.nan],
[np.nan,np.nan,np.nan,'k'],
[np.nan,3,np.nan,np.nan]],
columns=list('ABCD'))
print(df)
print(df.fillna(100)) # 用常数填充
print(df.fillna({'A':'这是第一列的填充值'}))# 字典填充
print(df.fillna(method='backfill')) # 同bfill
print(df.fillna(method='pad')) # 同ffill
print(df.fillna(method='pad', limit=1)) # limit限制了只填充一个
print(df.fillna(method='pad', axis=1)) # axis为1时,横向填充
# A B C D
# 0 NaN 2.0 NaN NaN
# 1 3.0 4.0 88.0 NaN
# 2 NaN NaN NaN k
# 3 NaN 3.0 NaN NaN
# A B C D
# 0 100.0 2.0 100.0 100
# 1 3.0 4.0 88.0 100
# 2 100.0 100.0 100.0 k
# 3 100.0 3.0 100.0 100
# A B C D
# 0 这是第一列的填充值 2.0 NaN NaN
# 1 3 4.0 88.0 NaN
# 2 这是第一列的填充值 NaN NaN k
# 3 这是第一列的填充值 3.0 NaN NaN
# A B C D
# 0 3.0 2.0 88.0 k
# 1 3.0 4.0 88.0 k
# 2 NaN 3.0 NaN k
# 3 NaN 3.0 NaN NaN
# A B C D
# 0 NaN 2.0 NaN NaN
# 1 3.0 4.0 88.0 NaN
# 2 3.0 4.0 88.0 k
# 3 3.0 3.0 88.0 k
# A B C D
# 0 NaN 2.0 NaN NaN
# 1 3.0 4.0 88.0 NaN
# 2 3.0 4.0 88.0 k
# 3 NaN 3.0 NaN k
# A B C D
# 0 NaN 2 2 2
# 1 3 4 88 88
# 2 NaN NaN NaN k
# 3 NaN 3 3 3

参考:https://blog.csdn.net/weixin_39549734/article/details/81221276

源码:

1     def fillna(self, value=None, method=None, axis=None, inplace=False,
2 limit=None, downcast=None, **kwargs):
3 return super(DataFrame,
4 self).fillna(value=value, method=method, axis=axis,
5 inplace=inplace, limit=limit,
6 downcast=downcast, **kwargs)
7
8 @Appender(_shared_docs['shift'] % _shared_doc_kwargs)

fillna()函数的更多相关文章

  1. fillna()

    将下面注释掉 fillna() 函数:有一个inplace参数,默认为false,不会对原来dataframe中进行替换,为True时候会修改原来的.

  2. 从Excel到Python:最常用的36个Pandas函数

    本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据清洗.预处理,以及最常见的数据分类,数据筛选,分类汇总,透视等最常见的操作. 生成数据表 常见的生成数据表的方法有两 ...

  3. 关于Excel,你一定用的到的36个Python函数

    从Excel到Python:最常用的36个Pandas函数关于Excel,你一定用的到的36个Python函数 本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据清洗 ...

  4. 利用Python进行数据分析(10) pandas基础: 处理缺失数据

      数据不完整在数据分析的过程中很常见. pandas使用浮点值NaN表示浮点和非浮点数组里的缺失数据. pandas使用isnull()和notnull()函数来判断缺失情况. 对于缺失数据一般处理 ...

  5. 【转载】使用pandas进行数据清洗

    使用pandas进行数据清洗 本文转载自:蓝鲸的网站分析笔记 原文链接:使用python进行数据清洗 目录: 数据表中的重复值 duplicated() drop_duplicated() 数据表中的 ...

  6. Python【8】-分析json文件

    一.本节用到的基础知识 1.逐行读取文件 for line in open('E:\Demo\python\json.txt'): print line 2.解析json字符串 Python中有一些内 ...

  7. Python数据分析之pandas学习

    Python中的pandas模块进行数据分析. 接下来pandas介绍中将学习到如下8块内容:1.数据结构简介:DataFrame和Series2.数据索引index3.利用pandas查询数据4.利 ...

  8. Python 数据分析(一) 本实验将学习 pandas 基础,数据加载、存储与文件格式,数据规整化,绘图和可视化的知识

    第1节 pandas 回顾 第2节 读写文本格式的数据 第3节 使用 HTML 和 Web API 第4节 使用数据库 第5节 合并数据集 第6节 重塑和轴向旋转 第7节 数据转换 第8节 字符串操作 ...

  9. pandas处理丢失数据-【老鱼学pandas】

    假设我们的数据集中有缺失值,该如何进行处理呢? 丢弃缺失值的行或列 首先我们定义了数据集的缺失值: import pandas as pd import numpy as np dates = pd. ...

随机推荐

  1. C#.NET、Power BI、数据挖掘

    阅读目录 1.采集目目标特点与分析 2.方案第一版-Low到爆,别笑话 3.碰壁后的第二版方案 4.最终方案第三版 5.总结 说起采集,其实我是个外行,以前拔过阿里巴巴的客户数据,在我博客的文章:C# ...

  2. css秘密花园一

    css秘密花园 1.透明边框 <style> div{ width: 120px; height: 60px; margin: 30px auto; background: pink; b ...

  3. JS 的 Browser对象

    Window对象 closed innerHeight    窗口文档显示区的高度,包括滚动条 outerHeight    窗口总高度,包括工具条和滚动条 open() close() alert( ...

  4. <img> 标签的 src 属性

    src属性 加载的时候就会请求 1.servlet生成一个图片 2.你直接输入servlet的连接看一下,就是一个图片,和我们自己发布到服务器的一样. 3.页面加载时,会访问这个servelt连接,自 ...

  5. MongoDB入门_MongoDB特色

    1. sql数据库与nosql数据库对比 nosql不支持实时一致性转而支持数据的最终一致性,数据有一定的延迟 redis数据库支持部分事物,而mongodb不支持事物 nosql数据库没有多表联查功 ...

  6. tf模型可视化工具

    一方面可以用tensorboard来可视化,更方便的是用如下网址: https://lutzroeder.github.io/netron/

  7. systemd 相关及服务启动失败原因

    1 查看启用的units systemctl list-unit-files | grep enabled 2 查看指定服务的日志 按服务单元过滤 journalctl -u j   查看j.serv ...

  8. nodejs 遍历目录

    1 var fs = require("fs"), path = require("path"); function walk(dir, callback) { ...

  9. 下载放在resource下面的excel文件

    1.将excel文件放项目resources目录下 2.打包的时候排除指定后缀文件,否则打包时会出现文件损坏的情况 <configuration> <encoding>UTF- ...

  10. ubuntu16.04 安装samba

    安装samba 1.更新当前软件 sudo apt-get upgrade sudo apt-get update sudo apt-get dist-upgrade 2.执行 sudo apt-ge ...