如何生成一天的时间戳?

问题描述 投票:0回答:2

我在时间序列熊猫数据框下有一个值。但是,此框架不包含datetime列。数据大约为1440行,一天匹配1440分钟。因此,我想为此帧生成分钟时间戳列,该怎么做?

所需的结果格式为'%Y-%m-%d%H:%M:%S'

之前

        value
0       210.38
1       210.50
2       210.51
3       210.40
4       210.41

之后

            datetime       value
0   2019-09-18 23:55:00    210.38
1   2019-09-18 23:56:00    210.50
2   2019-09-18 23:57:00    210.51
3   2019-09-18 23:58:00    210.40
4   2019-09-18 23:59:00    210.41

谢谢!

python pandas datetime
2个回答
1
投票

尝试一下,

from datetime import datetime
df=pd.DataFrame({'value': [ 210.38, 210.50, 210.51, 210.40, 210.41]})
df['date'] = pd.date_range(start=datetime.now(), periods=len(df), freq='T')

O / P:

    value                       date
0  210.38 2020-01-10 15:04:23.249355
1  210.50 2020-01-10 15:05:23.249355
2  210.51 2020-01-10 15:06:23.249355
3  210.40 2020-01-10 15:07:23.249355
4  210.41 2020-01-10 15:08:23.249355

1
投票

用途:

df.insert(0, 'datetime', pd.date_range('2019-09-18 23:55:00', periods=len(df), freq='T'))
print (df)
             datetime   value
0 2019-09-18 23:55:00  210.38
1 2019-09-18 23:56:00  210.50
2 2019-09-18 23:57:00  210.51
3 2019-09-18 23:58:00  210.40
4 2019-09-18 23:59:00  210.41

如果要动态生成日期时间:

df.insert(0, 'datetime', pd.date_range(pd.Timestamp.now().floor('T'), periods=len(df), freq='T'))
print (df)
             datetime   value
0 2020-01-10 10:36:00  210.38
1 2020-01-10 10:37:00  210.50
2 2020-01-10 10:38:00  210.51
3 2020-01-10 10:39:00  210.40
4 2020-01-10 10:40:00  210.41
© www.soinside.com 2019 - 2024. All rights reserved.