[英]Create weekly time series with DARTS from dataframe
如何创建具有每周频率的飞镖的时间序列?
当每周数据如下时:
import pandas as pd
df = pd.DataFrame({
'Date' : [
pd.to_datetime('2022-12-05'),
pd.to_datetime('2022-12-12'),
pd.to_datetime('2022-12-19'),
pd.to_datetime('2022-12-26')],
'Variable': [10,21,23,24]})
我很难每周获得正确的freq
:
from darts import TimeSeries
# I use freq = day in order to not to get an error.
TimeSeries.from_dataframe(df, 'Date', "Variable", freq="d")
我不确定你的问题。 您的数据已经是每周一次。 此处的日期似乎有错字: pd.to_datetime('2022-12-02')
,应该是pd.to_datetime('2022-12-02')
。
我不知道这是否是目的,但就个人而言,在使用飞镖创建 TimeSeries object 之前,我会使用 numpy 或 pandas 处理数据(缺失数据、频率等)。 Numpy 和/或 pandas 是具有执行此功能的较大库。 预先检查数据质量也是一种很好的做法。
回到你的问题,那应该可以解决问题:
df = pd.DataFrame({
'Date': [
pd.to_datetime('2022-12-05'),
pd.to_datetime('2022-12-12'),
pd.to_datetime('2022-12-19'),
pd.to_datetime('2022-12-26')],
'Variable': [10, 21, 23, 24]})
df.set_index('Date', inplace=True) # set Date as index
ts_object = TimeSeries.from_times_and_values(times=df.index,values=df['Variable'])
我假设你的意思是2022-12-12
而不是2022-12-02
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.