附加的实用函数

class darts.utils.ts_utils.SeriesType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[源代码]

基类:Enum

用于不同 TimeSeries 序列类型的枚举。

NONE = -1
SEQ = 1
SEQ_SEQ = 2
SINGLE = 0
darts.utils.ts_utils.get_series_seq_type(ts)[源代码]

返回 ts 的序列类型。

  • SeriesType.SINGLE: 时间序列 (例如,单一系列)

  • SeriesType.SEQ: TimeSeries 的序列(例如,多个序列)

  • SeriesType.SEQ_SEQ: TimeSeries 的序列的序列(例如历史预测输出)

参数

ts (Union[TimeSeries, Sequence[TimeSeries], Sequence[Sequence[TimeSeries]]]) – 要从中获取序列类型的输入序列。

引发

ValueError – 如果 ts 不是预期的序列类型之一。

返回类型

SeriesType

darts.utils.ts_utils.get_single_series(ts)[源代码]

ts 返回单个(第一个)TimeSeries 或 None。如果 ts 是 TimeSeries,则返回 ts;如果 tsSequence[TimeSeries],则返回 ts[0];如果 tsSequence[Sequence[TimeSeries]],则返回 ts[0][0]。否则,返回 None

参数

ts (Union[TimeSeries, Sequence[TimeSeries], Sequence[Sequence[TimeSeries]], None]) – None,一个单独的 TimeSeries,一个 TimeSeries 序列,或者一个 TimeSeries 序列的序列。

返回

ts 如果 ts 是一个时间序列,ts[0] 如果 ts 是一个时间序列序列。否则,返回 None

返回类型

TimeSeries

darts.utils.ts_utils.retain_period_common_to_all(series)[源代码]

修剪提供的列表中的所有系列(如有必要),以便返回的时间序列具有共同的跨度(对应于所有系列共有的最大时间子区间)。

参数

series (List[TimeSeries]) – 要考虑的系列列表。

引发

ValueError – 如果不存在共同的时间子区间

返回

一系列列表,其中每个系列具有相同的跨度

返回类型

List[TimeSeries]

darts.utils.ts_utils.seq2series(ts)[源代码]

如果 ts 是一个仅包含单一系列的序列,则返回该单一系列作为 TimeSeries。

参数

ts (Union[TimeSeries, Sequence[TimeSeries], None]) – None,一个单一的时间序列,或一个时间序列的序列

返回类型

ts 如果不是单元素 TimeSeries 序列,则为 ts,否则为 ts[0]

darts.utils.ts_utils.series2seq(ts, seq_type_out=SeriesType.SEQ, nested=False)[源代码]

如果可能,将 ts 转换为所需的序列类型 seq_type_out。否则,返回原始的 ts

参数
  • ts (Union[TimeSeries, Sequence[TimeSeries], Sequence[Sequence[TimeSeries]], None]) – None,一个单一的 TimeSeries,一个 TimeSeries 序列,或一个 TimeSeries 序列的序列。

  • seq_type_out (SeriesType) – 输出序列类型: - SeriesType.SINGLE: TimeSeries (例如,单个序列) - SeriesType.SEQ: TimeSeries 的序列 (例如,多个序列) - SeriesType.SEQ_SEQ: TimeSeries 的序列的序列 (例如,历史预测输出)

  • nested (bool) – 仅在 seq_type_out=SeriesType.SEQ_SEQts 具有序列类型 SeriesType.SEQ 时适用。在这种情况下,将 ts 中的每个元素包装在一个列表中([ts1, ts2] -> [[ts1], [ts2]])。

引发

ValueError – 如果 seq_type_out 的值无效。

返回类型

Union[TimeSeries, Sequence[TimeSeries], Sequence[Sequence[TimeSeries]], None]