温馨提示×

如何自定义fillna函数的填充逻辑

小樊
86
2024-08-29 14:09:02
栏目: 编程语言

在Python中,你可以使用pandas库的fillna()函数来填充缺失值

import pandas as pd
import numpy as np

# 创建一个包含缺失值的DataFrame
data = {'A': [1, 2, np.nan], 'B': [4, np.nan, 6]}
df = pd.DataFrame(data)
print("原始DataFrame:")
print(df)

# 自定义填充逻辑
def custom_fillna(series):
    if series.name == 'A':
        return series.fillna(0)
    elif series.name == 'B':
        return series.fillna(method='ffill')
    else:
        return series

# 应用自定义填充逻辑
filled_df = df.apply(custom_fillna)
print("\n使用自定义填充逻辑后的DataFrame:")
print(filled_df)

这个例子中,我们首先创建了一个包含缺失值的DataFrame。然后,我们定义了一个名为custom_fillna的函数,该函数根据列名(‘A’或’B’)对缺失值进行不同的处理。接下来,我们使用apply()方法将自定义填充逻辑应用于DataFrame。

运行此代码后,你将看到原始DataFrame已被修改,其中列’A’的缺失值被替换为0,列’B’的缺失值使用前向填充方法进行填充。

0