gluonts.dataset.schema.translate 模块#
gluonts.dataset.schema.translate
#
此模块提供了 Translator
类,可用于翻译字典。它旨在与 GluonTS 数据集一起使用,以便在输入数据方面提供更大的灵活性
tl = Translator.parse(target="demand", feat_dynamic_real="[price]")
- class gluonts.dataset.schema.translate.Get(name: str)[源代码]#
基类:
gluonts.dataset.schema.translate.Op
从输入中提取字段
name
。- name: str#
- class gluonts.dataset.schema.translate.GetAttr(obj: gluonts.dataset.schema.translate.Op, name: str)[源代码]#
基类:
gluonts.dataset.schema.translate.Op
调用
obj.name
。- name: str#
- class gluonts.dataset.schema.translate.GetItem(obj: gluonts.dataset.schema.translate.Op, dims: List[int])[源代码]#
基类:
gluonts.dataset.schema.translate.Op
- dims: List[int]#
- class gluonts.dataset.schema.translate.Method(obj: gluonts.dataset.schema.translate.Op, args: list)[源代码]#
基类:
gluonts.dataset.schema.translate.Op
- args: list#
- class gluonts.dataset.schema.translate.Parser(stream: gluonts.dataset.schema.translate.TokenStream)[源代码]#
基类:
object
- class gluonts.dataset.schema.translate.Stack(objects: List[gluonts.dataset.schema.translate.Op])[源代码]#
基类:
gluonts.dataset.schema.translate.Op
- objects: List[gluonts.dataset.schema.translate.Op]#
- class gluonts.dataset.schema.translate.Token(name: str, value: str, match: Any)[源代码]#
基类:
object
- match: Any#
- name: str#
- value: str#
- class gluonts.dataset.schema.translate.TokenStream(tokens: List[gluonts.dataset.schema.translate.Token], idx: dataclasses.InitVar[int] = 0)[源代码]#
基类:
object
- RX: ClassVar[str] = '(?P<DOT>\\.)|(?P<COMMA>,)|(?P<PAREN_OPEN>[\\[|\\(])|(?P<PARAN_CLOSE>[\\]|\\)])|(?P<NUMBER>\\-?\\d+)|(?P<NAME>\\w+)|(?P<WHITESPACE>\\s+)|(?P<INVALID>.+)'#
- TOKENS: ClassVar[dict] = {'COMMA': ',', 'DOT': '\\.', 'INVALID': '.+', 'NAME': '\\w+', 'NUMBER': '\\-?\\d+', 'PARAN_CLOSE': '[\\]|\\)]', 'PAREN_OPEN': '[\\[|\\(]', 'WHITESPACE': '\\s+'}#
- idx: dataclasses.InitVar[int] = 0#
- tokens: List[gluonts.dataset.schema.translate.Token]#
- class gluonts.dataset.schema.translate.Translator(fields: typing.Dict[str, gluonts.dataset.schema.translate.Op] = <factory>, drop: bool = False)[源代码]#
基类:
object
GluonTS 数据集的简单翻译。
给定的转换器将输入字典(数据条目)转换为输出字典。
基本用法
>>> tl = Translator.parse(x="a[0]") >>> data = {"a": [1, 2, 3]} >>> assert tl(data)["x"] == 1
转换器首先将所有输入字段复制到一个新的字典中,然后再应用翻译。因此,一个空的 Translator 就像字典的恒等函数一样。
>>> identity = Translator() >>> data = {"a": 1, "b": 2, "c": 3} >>> assert identity(data) == data
使用
Translator.parse(...)
,可以定义应用于输入数据的表达式。例如,Translator.parse(x="y")
会将 y 的值写入输出字典的 x 字段。这些右手边的表达式支持索引(例如
y[1]
)、属性访问(例如x.T
)和方法调用(例如y.transpose(1, 0)
)。- drop: bool = False#
- fields: Dict[str, gluonts.dataset.schema.translate.Op]#
- static parse(fields: Optional[dict] = None, drop: bool = False, **kwargs_fields) gluonts.dataset.schema.translate.Translator [源代码]#
- gluonts.dataset.schema.translate.parse(x: Union[str, list]) gluonts.dataset.schema.translate.Op [源代码]#