【发布时间】:2015-09-08 15:09:44
【问题描述】:
所以我有一个 [Python2.7] Pandas 数据框(df),如下所示:
name flag dummy_D random ID dummy_S dummy_T
0 Mick Purple 2 NaN 1 21 32
1 John Red NaN NaN 2 w32 4
2 Christine NaN 2 NaN 2 w33 3
3 Stevie NaN 4 NaN 2 w34 2
4 Lindsey NaN 5 NaN 2 w35 NaN
我想用以前的值替换用“虚拟”声明的列中的所有 NaN(并且只有这些列,而数据框的其余部分保持不变)
这就是我所做的:
dummycol = [col for col in df.columns if 'dummy' in col]
for d in dummycol:
df[d] = df[d].fillna(method = 'pad')
我的问题是:
在 Pandas 中是否有更好的(在编码和内存效率方面)方法来执行此操作,而不是浪费内存来创建列表 + 循环遍历它?有一个单线解决方案会很棒!
提前非常感谢!
会
【问题讨论】:
标签: python pandas multiple-columns