【发布时间】:2016-01-25 03:14:17
【问题描述】:
datetime col_A col_B
1/1/2012 125.501 A
1/2/2012 NaN A
1/3/2012 125.501 A
1/4/2013 NaN A
1/5/2013 125.501 B
2/28/2013 125.501 B
2/28/2014 125.501 B
1/2/2016 125.501 B
1/4/2016 125.501 B
2/28/2016 NaN B
根据Fill in missing values in pandas dataframe using mean,我正在填写 col_A 缺失值,如下所示:
df = df.groupby([df.index.month, df.index.day]).transform(lambda x: x.fillna(x.mean()))
但是,当我这样做时,它会使 col_B 消失。如何保留所有字符串的 col_B?
【问题讨论】:
-
在左边你需要
df['col_A'] =而不仅仅是df=。您正在用一列替换整个数据框。只需更换色谱柱。在这里没关系,但我也会在右侧指定col_A,而不是依赖mean来忽略col_B,因为它是非数字的 -
如果我有多个列,例如
col_A,这是否也可以:df[['col_A','col_C']] = ...?