TimeSeriesDataSet的代码例子,数据只有两个列,一个时间,一个目标列。
时间: 2023-06-07 08:06:55 浏览: 36
好的,这是一个使用TimeSeriesDataSet类的示例代码:
```python
import pandas as pd
from gluonts.dataset.common import ListDataset
from gluonts.dataset.common import load_datasets
class MyTimeSeriesDataSet(ListDataset):
def __init__(self, time_series_data):
super().__init__(time_series_data)
@classmethod
def from_pandas(cls, df: pd.DataFrame, freq: str) -> "MyTimeSeriesDataSet":
target_column = df.columns[-1]
time_series_data = []
for row in df.itertuples(index=False):
data = {"start":row[0], "target":row[1]}
time_series_data.append(data)
return cls(time_series_data)
if __name__=="__main__":
data = pd.DataFrame({"time":["2022-01-01", "2022-01-02", "2022-01-03"],
"target":[100, 200, 300]})
dataset = MyTimeSeriesDataSet.from_pandas(data, freq="1D")
print(dataset[0])
```
这是一个自定义的MyTimeSeriesDataSet类,继承了ListDataset类。该类中的from_pandas方法将Pandas DataFrame转换为ListDataset格式的时间序列数据集。在这个示例中,我们有一个数据集,其中包含了三个日期和一个目标列。我们使用from_pandas方法将其转换为时间序列数据集,并使用GluonTS中的load_datasets方法加载数据集,然后打印第一个序列数据。