gpt4 book ai didi

python - 将间隔日期时间值转换为任意频率时间序列

转载 作者:行者123 更新时间:2023-12-02 00:22:02 25 4
gpt4 key购买 nike

我有以下数据结构:

2011-01-01 00:00, 2011-01-20 00:00, 200   # days-range
2011-01-20 00:00, 2011-03-08 00:00, 1288 # days-range
2011-04-11 00:00, 2012-01-08 00:00, 5987 # days-range

2012-02-01 00:00, 2012-02-01 01:00, 7 # hourly-range
2012-02-01 02:00, 2012-02-01 02:30, 3 # hourly-range

这是与 的间隔开始日期 , 结束日期 (在日期之间记录的一些指标)。

为了进一步的数据分析,我需要生成具有所需频率的时间序列:
每月/每天/每小时/半小时时间序列。例如,每小时数据:
2011-01-01 00:00, 2 
2011-01-01 01:00, 6
2011-01-01 02:00, 5
...

是否有任何 python 库可以帮助实现这种数据转换?

最佳答案

import pandas as pd

def stretch(start_date, end_date, value, freq):
freq_dict = {'d': pd.datetools.day,
'h': pd.datetools.Hour(1)}
dr = pd.DateRange(start_date, end_date, offset=freq_dict[freq])
return pd.TimeSeries(value / dr.size, index=dr)


print stretch('2011-01-01 00:00', '2011-01-20 00:00', 200, 'd')

打印
2011-01-01    10
2011-01-02 10
2011-01-03 10
2011-01-04 10
2011-01-05 10
2011-01-06 10
2011-01-07 10
2011-01-08 10
2011-01-09 10
2011-01-10 10
2011-01-11 10
2011-01-12 10
2011-01-13 10
2011-01-14 10
2011-01-15 10
2011-01-16 10
2011-01-17 10
2011-01-18 10
2011-01-19 10
2011-01-20 10

关于python - 将间隔日期时间值转换为任意频率时间序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10532501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com