Панды: групповая пересылка с указателем даты и времени

У меня есть набор данных, который имеет две колонки: компания и значение.
Имеет индекс даты и времени, который содержит дубликаты (в один и тот же день разные компании имеют разные значения). В значениях отсутствуют данные, поэтому я хочу переслать заполненные отсутствующие данные предыдущим назначением данных из той же компании.

Тем не менее, я не могу найти хороший способ сделать это, не сталкиваясь со странными групповыми ошибками, предполагая, что я делаю что-то не так.

Данные игрушки:

a = pd.DataFrame({'a': [1, 2, None], 'b': [12,None,14]})
a.index = pd.DatetimeIndex(['2010', '2011', '2012'])  
a = a.unstack() 
a = a.reset_index().set_index('level_1') 
a.columns = ['company', 'value'] 
a.sort_index(inplace=True)

Попытки решения (не работали:ValueError: cannot reindex from a duplicate axis):

a.groupby('company').ffill() 
a.groupby('company')['value'].ffill() 
a.groupby('company').fillna(method='ffill')

Хакерское решение (которое дает желаемый результат, но, очевидно, это просто уродливое решение):

a['value'] = a.reset_index().groupby(
    'company').fillna(method='ffill')['value'].values

Вероятно, есть простой и элегантный способ сделать это, как это выполняется в Pandas?

Ответы на вопрос(3)

Ваш ответ на вопрос