Как сделать пустой датайфрем по дням, времени и секундам?
Как сделать пустой датафрейм от понедельника до пятницы (скажем от 202010 до 202011), с 10 до 14, с временем в секундах?
import pandas as pd
df = pd.DataFrame({'Date': ['NaN'], 'Sec': ['NaN'],'1': ['NaN'], '2': ['NaN']})
Результат:
...
Date Sec 1 2
20201011 131007 NaN NaN
20201011 131008 NaN NaN
20201011 131009 NaN NaN
...
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
Воспользуйтесь pd.date_range():
In [120]: df = pd.DataFrame({"Date": pd.date_range('2020-12-07', '2020-12-12', freq="1S")})
In [121]: df
Out[121]:
Date
0 2020-12-07 00:00:00
1 2020-12-07 00:00:01
2 2020-12-07 00:00:02
3 2020-12-07 00:00:03
4 2020-12-07 00:00:04
... ...
431996 2020-12-11 23:59:56
431997 2020-12-11 23:59:57
431998 2020-12-11 23:59:58
431999 2020-12-11 23:59:59
432000 2020-12-12 00:00:00
[432001 rows x 1 columns]
In [122]: df.dtypes
Out[122]:
Date datetime64[ns] # <--- NOTE!
dtype: object
а дальше фильтруйте строки по времени как вам нужно и добавляйте новые столбцы...