python - 如何为 pandas fillna() 方法中的不同列应用不同的方法参数

标签 python pandas dataframe fillna

我有一个这样的数据框。

Name    Roll    GPA
A       10      5.0
B       NaN     4.5
C       12      NaN

我正在使用:

df.fillna(method='ffill', inplace=True)

但它使用 ffill 方法填充所有列。

但我想使用 ffillbfill 方法填充 NaN 值。例如,我想将 method='ffill' 应用于 Roll 列并将 method='bfill' 应用于 GPA 专栏。我怎样才能做到这一点?

最佳答案

两者都可以。

df2 = df.assign(Roll=df.Roll.ffill(), GPA=df.GPA.bfill())

关于python - 如何为 pandas fillna() 方法中的不同列应用不同的方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55661337/

相关文章:

python - 将数据帧列转换为列表列表,然后转换回数据帧,同时保持 ID 关联

python - 将组的最后一个值替换为 NaN

python - Pandas 列中值之间的平均天数差异

python - Pandas Dataframe groupby : double groupby & apply function

python - 如何在 Pandas 中每 2 行执行加权平均?

python - Django url 模式 - 带正斜杠的参数

python - connection.commit() 性能影响

python - 如何在特定shell下执行远程pysftp命令

python - 为什么 numba 在 numpy linspace 中引发类型错误

python - Pandas :对于 df 中的每一行,复制行 N 次,稍作更改