Несколько столбцов для datetime в качестве индекса без потери другого столбца - PullRequest
0 голосов
/ 06 октября 2018

У меня есть датафрейм, который выглядит следующим образом (за исключением гораздо более длинного).Я хочу конвертировать в указатель даты и времени.

      YYYY  MM  D   value
679   1900   1  1   46.42
1355  1900   2  1  137.14
1213  1900   3  1  104.25
1380  1900   4  1  149.39
1336  1900   5  1  130.33

Когда я использую это

df = pd.to_datetime((df.YYYY*10000+df.MM*100+df.D).apply(str),format='%Y%m%d')

, я получаю индекс даты и времени, но я теряю столбец значений.В итоге я хочу -

             value
1900-01-01   46.42
1900-02-01   137.14
1900-03-01   104.25
1900-04-01   149.39
1900-05-01   130.33

Как я могу это сделать?Спасибо за ваше время заранее!

1 Ответ

0 голосов
/ 06 октября 2018

Вы можете использовать панд to_datetime, чтобы преобразовать это

df = df.astype(str)
df.index = pd.to_datetime(df['YYYY'] +' '+ df['MM']+' ' +df['D'])
df.drop(['YYYY','MM','D'],axis=1,inplace=True)

Out:

            value
1900-01-01  46.42
1900-02-01  137.14
1900-03-01  104.25
1900-04-01  149.39
1900-05-01  130.33
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...