pandas - 不在索引中

pandas - not in index

我正在尝试用前一个值替换 'A' 列中的 nan 值(第一个值出现在第 9 行)

y = len(df)
for i in range(1,y):
     if (np.isnan(df.ix[i,'A'])):
         df.ix[i,'A'] = dfH.ix[i-1,'A']

报错

KeyError: "[9 'A'] not in index"

但是第 9 行 A 列显然在我的数据框中。这是怎么回事?

您可以将 fillnaffill 方法一起使用:

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

另一个解决方案:

df['A'].ffill(inplace = True)

样本:

df = pd.DataFrame({'A':[1,np.nan,3]})
print (df)
     A
0  1.0
1  NaN
2  3.0

df['A'].ffill(inplace = True)

print (df)
     A
0  1.0
1  1.0
2  3.0