脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python笔记之使用fillna()填充缺失值

python笔记之使用fillna()填充缺失值

2022-07-16 18:42集音 Python

这篇文章主要介绍了python笔记之使用fillna()填充缺失值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

 

使用fillna()填充缺失值

df = pd.read_csv("ccf_offline_stage1_train.csv")
print(df["Distance"])
df["distance"] = df["Distance"].fillna(-1).astype(int)
print(df["distance"])

结果太长不展示了,经过操作后成功将dataframe中distance列的缺失值都变成了-1

 

关于fillna()函数详解

inplace参数的取值:True、False

  • True:直接修改原对象
  • False:创建一个副本,修改副本,原对象不变(缺省默认)

method参数的取值 : {‘pad’, ‘ffill’,‘backfill’, ‘bfill’, None}, default None

  • pad/ffill:用前一个非缺失值去填充该缺失值
  • backfill/bfill:用下一个非缺失值填充该缺失值
  • None:指定一个值去替换缺失值(缺省默认这种方式)

limit参数:限制填充个数

axis参数:修改填充方向

#导包
import pandas as pd
import numpy as np
from numpy import nan as NaN
df1=pd.DataFrame([[1,2,3],[NaN,NaN,2],[NaN,NaN,NaN],[8,8,NaN]])
df1

代码结果:

python笔记之使用fillna()填充缺失值

 

一、不指定任何参数

1.  用常数填充

#一、不指定method参数
 
#1.用常数填充
print (df1.fillna(100))
print ("-----------------------")
print (df1)

运行结果:

python笔记之使用fillna()填充缺失值

2.  用字典填充

#2.用字典填充
df1.fillna({0:10,1:20,2:30})

运行结果:

python笔记之使用fillna()填充缺失值

 

二、指定inplace参数

#二、指定inplace参数
 
print (df1.fillna(0,inplace=True))
print ("-------------------------")
print (df1)

运行结果:

python笔记之使用fillna()填充缺失值

 

三、指定method参数

1.method = 'ffill'/'pad':用前一个非缺失值去填充该缺失值

#三、指定method参数
 
df2 = pd.DataFrame(np.random.randint(0,10,(5,5)))
df2.iloc[1:4,3] = NaN
df2.iloc[2:4,4] = NaN
df2

运行结果:

python笔记之使用fillna()填充缺失值

#1.method = "ffill"/"pad":用前一个非缺失值去填充该缺失值
 
df2.fillna(method="ffill")

运行结果:

python笔记之使用fillna()填充缺失值

2.method = 'bflii'/'backfill':用下一个非缺失值填充该缺失值

#2.method = "bflii"/"backfill":用下一个非缺失值填充该缺失值
 
df2.fillna(method="bfill")

运行结果:

python笔记之使用fillna()填充缺失值

 

四、指定limit参数

#四、指定limit参数
 
#用下一个非缺失值填充该缺失值
#只填充2个
 
df2.fillna(method="bfill", limit=2)

运行结果: 

python笔记之使用fillna()填充缺失值

 

五、指定axis参数

#五、指定axis参数
 
df2.fillna(method="ffill", limit=1, axis=1)

运行结果:

python笔记之使用fillna()填充缺失值

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_39348113/article/details/82608143

延伸 · 阅读

精彩推荐
  • PythonPython的Tornado框架异步编程入门实例

    Python的Tornado框架异步编程入门实例

    这篇文章主要介绍了Python的Tornado框架异步编程入门实例,异步编程的思维与普通编程比起来有些不同,需要的朋友可以参考下 ...

    C Wong5182020-06-12
  • PythonPygame Event事件模块的详细示例

    Pygame Event事件模块的详细示例

    事件是Pygame的重要模块之一,比如鼠标点击、键盘敲击、游戏窗口移动、调整窗口大小、触发特定的情节、退出游戏等等,本文就详细的介绍一下具体用法...

    zx3452022-03-02
  • PythonPython 模拟登陆的两种实现方法

    Python 模拟登陆的两种实现方法

    这篇文章主要介绍了Python 模拟登陆的两种实现方法的相关资料,这里提供两种方法一个是普通写法写的,另外一个是基于面向对象写的,模拟登录成功后才...

    qindongliang19225112020-12-01
  • Python解决pytorch rnn 变长输入序列的问题

    解决pytorch rnn 变长输入序列的问题

    这篇文章主要介绍了解决pytorch rnn 变长输入序列的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...

    huangneng021910332021-11-17
  • PythonpyQt4实现俄罗斯方块游戏

    pyQt4实现俄罗斯方块游戏

    这篇文章主要为大家详细介绍了pyQt4实现俄罗斯方块游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    JKhere4562021-03-09
  • Pythondjango将图片上传数据库后在前端显示的方法

    django将图片上传数据库后在前端显示的方法

    今天小编就为大家分享一篇django将图片上传数据库后在前端显示的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    fearless1110262021-02-25
  • PythonPython sqrt()函数用法说明

    Python sqrt()函数用法说明

    这篇文章主要介绍了Python sqrt()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    东师小镇5732021-09-19
  • Pythonpython opencv旋转图片的使用方法

    python opencv旋转图片的使用方法

    在图像处理中,有的时候会有对图片进行角度旋转的处理,尤其是在计算机视觉中对于图像扩充,旋转角度扩充图片是一种常见的处理。本文就详细的介绍...

    uncle_ll3842021-11-23