本篇文章为大家展示了如何在Pandas中使用Fillna填充缺失数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创新互联建站是一家专业提供筠连企业网站建设,专注与成都网站制作、成都网站设计、HTML5建站、小程序制作等业务。10年已为筠连众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。约定:
import pandas as pd import numpy as np from numpy import nan as NaN
填充缺失数据
fillna()是最主要的处理方式了。
df1=pd.DataFrame([[1,2,3],[NaN,NaN,2],[NaN,NaN,NaN],[8,8,NaN]]) df1
代码结果:
0 | 1 | 2 | |
---|---|---|---|
0 | 1.0 | 2.0 | 3.0 |
1 | NaN | NaN | 2.0 |
2 | NaN | NaN | NaN |
3 | 8.0 | 8.0 | NaN |
用常数填充:
df1.fillna(100)
代码结果:
0 | 1 | 2 | |
---|---|---|---|
0 | 1.0 | 2.0 | 3.0 |
1 | 100.0 | 100.0 | 2.0 |
2 | 100.0 | 100.0 | 100.0 |
3 | 8.0 | 8.0 | 100.0 |
通过字典填充不同的常数:
df1.fillna({0:10,1:20,2:30})
代码结果:
0 | 1 | 2 | |
---|---|---|---|
0 | 1.0 | 2.0 | 3.0 |
1 | 10.0 | 20.0 | 2.0 |
2 | 10.0 | 20.0 | 30.0 |
3 | 8.0 | 8.0 | 30.0 |
传入inplace=True直接修改原对象:
df1.fillna(0,inplace=True) df1
代码结果:
0 | 1 | 2 | |
---|---|---|---|
0 | 1.0 | 2.0 | 3.0 |
1 | 0.0 | 0.0 | 2.0 |
2 | 0.0 | 0.0 | 0.0 |
3 | 8.0 | 8.0 | 0.0 |
传入method=” “改变插值方式:
df2=pd.DataFrame(np.random.randint(0,10,(5,5))) df2.iloc[1:4,3]=NaN;df2.iloc[2:4,4]=NaN df2
代码结果:
0 | 1 | 2 | 3 | 4 | |
---|---|---|---|---|---|
0 | 6 | 6 | 2 | 4.0 | 1.0 |
1 | 4 | 7 | 0 | NaN | 5.0 |
2 | 6 | 5 | 5 | NaN | NaN |
3 | 1 | 9 | 9 | NaN | NaN |
4 | 4 | 8 | 1 | 5.0 | 9.0 |
df2.fillna(method='ffill')#用前面的值来填充
代码结果:
0 | 1 | 2 | 3 | 4 | |
---|---|---|---|---|---|
0 | 6 | 6 | 2 | 4.0 | 1.0 |
1 | 4 | 7 | 0 | 4.0 | 5.0 |
2 | 6 | 5 | 5 | 4.0 | 5.0 |
3 | 1 | 9 | 9 | 4.0 | 5.0 |
4 | 4 | 8 | 1 | 5.0 | 9.0 |
传入limit=” “限制填充个数:
df2.fillna(method='bfill',limit=2)
代码结果:
0 | 1 | 2 | 3 | 4 | |
---|---|---|---|---|---|
0 | 6 | 6 | 2 | 4.0 | 1.0 |
1 | 4 | 7 | 0 | NaN | 5.0 |
2 | 6 | 5 | 5 | 5.0 | 9.0 |
3 | 1 | 9 | 9 | 5.0 | 9.0 |
4 | 4 | 8 | 1 | 5.0 | 9.0 |
传入axis=” “修改填充方向:
df2.fillna(method="ffill",limit=1,axis=1)
代码结果:
0 | 1 | 2 | 3 | 4 | |
---|---|---|---|---|---|
0 | 6.0 | 6.0 | 2.0 | 4.0 | 1.0 |
1 | 4.0 | 7.0 | 0.0 | 0.0 | 5.0 |
2 | 6.0 | 5.0 | 5.0 | 5.0 | NaN |
3 | 1.0 | 9.0 | 9.0 | 9.0 | NaN |
4 | 4.0 | 8.0 | 1.0 | 5.0 | 9.0 |
上述内容就是如何在Pandas中使用Fillna填充缺失数据,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联成都网站设计公司行业资讯频道。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。