2017-02-21 26 views
1

я это dataframe, который включает в себя пренебрежимо малом:Заполните нана с повторяющимися значениями

 Date 
0 7.0 
1 8.0  
2 9.0  
3 10.0  
4 11.0 
5 12.0 
6 1.0 
7 2.0  
8 3.0  
9 4.0  
10 5.0 
11 6.0 
    ... 
90 NaN 
91 NaN 

Значение Даты являются номер месяца, и я знаю, что по индексу 90 это 1, но я хочу, чтобы заполнить другие NaNs с 2, 3 и т. Д. До 12, затем возвращается к 1, 2 и так далее. Предположим, что это так же, как в Excel, когда вы хотите заполнить столбец, вы ставите первые значения, затем выбираете их и полностью перемещаете и автоматически заполняете.

Любые идеи? Благодаря !

ответ

3

Вобщ:

df.Date=(range(len(df))+df.Date.loc[0]-1)%12+1 

Тогда

In [9]: df.loc[[0,90]] 
Out[9]: 
    Date 
0 7.0 
90 1.0 
+0

я получаю: ValueError: Длина значений не соответствует длине индекса – datascana

+0

Хорошо, я исправляю для многоколоночного DataFrame. –

+0

Протестировано, оно работает! благодаря – datascana