2015-11-12 3 views
2

У меня есть ФР так:не ffill сохраняя все столбцы

Key Class 
1  Green 
1  NaN 
1  NaN 
2  Red 
2  NaN 
2  NaN 

и я хочу направить заполнить Class. Im, используя этот код:

df=df.Class.fillna(method='ffill') 

и это возвращает:

Green 
Green 
Green 
Red 
Red 
Red 

как я могу сохранить Key колонку, делая это?

ответ

2
df['class'] = df.Class.fillna(method='ffill') 

в вашем коде, вы присваивающей весь dataframe быть результат, так что вместо этого вам нужно назначить единственный в class столбец

или иным способом, чтобы сделать следующее

In [126]: 
df.ffill() 
Out[126]: 
    Key Class 
0 1 Green 
1 1 Green 
2 1 Green 
3 2 Red 
4 2 Red 
5 2 Red 

вы также можете установить параметр inplace как true, если вы не хотите, чтобы новая копия с вашего df

df.ffill(inplace=True) 
Смежные вопросы