pandas学习之df.fillna的具体使用

  • Post category:Python

标题: pandas学习之df.fillna的具体使用

简介

在数据分析过程中,经常会遇到数据缺失的情况,如果数据缺失严重,就会影响后续分析的结果和准确性。在pandas中,使用fillna方法来填充缺失值是常见的解决方法,本文将详细讲解fillna方法的使用方法和示例。

语法

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

fillna方法有多个参数,其中比较常用的是valuemethod,下面对这两个参数进行详细说明。

value参数

value参数可以指定填充的值,可以是一个标量值,也可以是一个字典,使用字典时,键名表示列名,键值表示该列的填充值。

method参数

method参数可以指定填充的方法,具体有以下几种方式:
ffillpad:用前面的值进行填充;
bfillbackfill:用后面的值进行填充;
nearest:使用最接近的值进行填充。

示例

示例一:使用固定值填充

import pandas as pd
import numpy as np

# 创建一个包含缺失值的DataFrame
df = pd.DataFrame({'A': [1, 2, np.nan, 4],
                   'B': [5, np.nan, 7, 8],
                   'C': [9, 10, 11, np.nan]})

# 使用0填充缺失值
df.fillna(value=0, inplace=True)
print(df)

输出结果为:

     A    B     C
0  1.0  5.0   9.0
1  2.0  0.0  10.0
2  0.0  7.0  11.0
3  4.0  8.0   0.0

示例二:使用前一个值进行填充

import pandas as pd
import numpy as np

# 创建一个包含缺失值的DataFrame
df = pd.DataFrame({'A': [1, 2, np.nan, 4],
                   'B': [5, np.nan, 7, 8],
                   'C': [9, 10, 11, np.nan]})

# 使用前面的值进行填充
df.fillna(method='ffill', inplace=True)
print(df)

输出结果为:

     A    B     C
0  1.0  5.0   9.0
1  2.0  5.0  10.0
2  2.0  7.0  11.0
3  4.0  8.0  11.0

以上两个示例演示了fillna方法的基本用法,可以根据实际情况选择不同的填充方式和填充值,以达到最优化分析结果的目的。

总结

  • fillna方法可以用于填充缺失值,常用参数为valuemethod
  • value参数可以指定填充的值,可以是一个标量值或一个字典,字典的键名表示列名,字典的键值表示该列的填充值;
  • method参数可以指定填充的方式,可以是ffillbfill、或nearest,默认为None