Как заполнить недостающие данные о времени с помощью панд - PullRequest
2 голосов
/ 21 апреля 2019

У меня есть ряд данных pd, как показано ниже. По некоторым причинам у него нет данных до 2018-07-26 13:30:00 ~ 2018-08-03 15: 45: 00

13     2018-03-13 16:40:00      12   12.07          0       
14     2018-03-13 16:41:00      13   12.07          0       
15     2018-03-13 16:42:00      12   12.07          0       
 …
230000 2018-07-26 13:30:00      45   12.07          0
230001 2018-08-03 15:45:00      30   12.07          0
230002 ....
…

Я хотел заполнить этот пробел 0 и попробовал "pandas.Series.asfreq" вот так

df1= df.asfreq("T",fill_value=0)
print(df1)

но это дало мне странный ответ, как показано ниже.

1970-01-01       0    0    0

Не могли бы вы научить меня, как заполнять эти пробелы?

1 Ответ

4 голосов
/ 21 апреля 2019

IIUC, я полагаю, вам нужно сначала использовать DataFrame.set_index, установив индекс для вашего столбца datetime.

Вот базовый пример, но вы должны заменить 'datetime_col' для фактического имени вашего собственного столбца даты и времени:

# If necessary, cast datetime column to correct dtype
# df['datetime_col'] = pd.to_datetime(df['datetime_col']) 

df_new = df.set_index('datetime_col').asfreq('T', fill_value=0).reset_index()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...