模块 coreforecast.scalers

全局变量

  • TYPE_CHECKING

函数 boxcox_lambda

boxcox_lambda(
    x: ndarray,
    method: str,
    season_length: Optional[int] = None,
    lower: float = -0.9,
    upper: float = 2.0
)float

找到 Box-Cox 变换的最佳 lambda 值

参数

  • x (np.ndarray): 用于变换的数据数组。
  • method (str): 使用的方法。有效选项为 'guerrero' 和 'loglik'。'guerrero' 最小化 x 子序列的变异系数并支持负值。'loglik' 最大化对数似然函数。
  • season_length (int, 可选): 季节周期的长度。仅在 method='guerrero' 时需要。
  • lower (float): lambda 的下界。
  • upper (float): lambda 的上界。

返回

  • float: 最佳 lambda 值。

函数 boxcox

boxcox(x: ndarray, lmbda: float) → ndarray

应用 Box-Cox 变换

参数

  • x (np.ndarray): 用于变换的数据数组。
  • lmbda (float): 要使用的 lambda 值。

返回

  • np.ndarray: 变换后的数据数组。

函数 inv_boxcox

inv_boxcox(x: ndarray, lmbda: float) → ndarray

反转 Box-Cox 变换

参数

  • x (np.ndarray): 用于变换的数据数组。
  • lmbda (float): 要使用的 lambda 值。

返回

  • np.ndarray: 反转变换后的数据数组。

LocalMinMaxScaler

将每个组缩放到 [0, 1] 区间


方法 fit

fit(ga: 'GroupedArrayT') → _BaseLocalScaler

计算每个组的统计量。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • self: 拟合后的缩放器对象。

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

“计算每个组的统计量并应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量反转变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('_BaseLocalScaler')]) → _BaseLocalScaler

方法 take

take(idxs: ndarray) → _BaseLocalScaler

方法 transform

transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

LocalStandardScaler

将每个组缩放到零均值和单位方差


方法 fit

fit(ga: 'GroupedArrayT') → _BaseLocalScaler

计算每个组的统计量。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • self: 拟合后的缩放器对象。

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

“计算每个组的统计量并应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量反转变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('_BaseLocalScaler')]) → _BaseLocalScaler

方法 take

take(idxs: ndarray) → _BaseLocalScaler

方法 transform

transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

LocalRobustScaler

使用稳健统计量缩放每个组

参数

  • scale (str): 要使用的稳健缩放类型。有效选项为 'iqr' 和 'mad'。如果为 'iqr',将使用四分位距作为缩放比例。如果为 'mad',将使用中位数绝对偏差作为缩放比例。

方法 __init__

__init__(scale: str)

方法 fit

fit(ga: 'GroupedArrayT') → _BaseLocalScaler

计算每个组的统计量。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • self: 拟合后的缩放器对象。

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

“计算每个组的统计量并应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量反转变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('_BaseLocalScaler')]) → _BaseLocalScaler

方法 take

take(idxs: ndarray) → _BaseLocalScaler

方法 transform

transform(ga: 'GroupedArrayT') → ndarray

使用计算出的统计量应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

LocalBoxCoxScaler

按组找到 Box-Cox 变换的最佳 lambda 值并应用它

参数

  • season_length (int, 可选): 季节周期的长度。仅在 method='guerrero' 时需要。
  • lower (float): lambda 的下界。
  • upper (float): lambda 的上界。
  • method (str): 使用的方法。有效选项为 'guerrero' 和 'loglik'。'guerrero' 最小化 x 子序列的变异系数并支持负值。'loglik' 最大化对数似然函数。

方法 __init__

__init__(
    method: str,
    season_length: Optional[int] = None,
    lower: float = -0.9,
    upper: float = 2.0
)

方法 fit

fit(ga: 'GroupedArrayT') → _BaseLocalScaler

计算每个组的统计量。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • self: 拟合后的缩放器对象。

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

“计算每个组的统计量并应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

使用计算出的 lambda 值反转变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('_BaseLocalScaler')]) → _BaseLocalScaler

方法 take

take(idxs: ndarray) → _BaseLocalScaler

方法 transform

transform(ga: 'GroupedArrayT') → ndarray

使用计算出的 lambda 值应用变换。

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

Difference

从每个组中减去一个滞后值

参数

  • d (int): 要减去的滞后值。

方法 __init__

__init__(d: int)

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

应用变换

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

反转变换

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('Difference')]) → Difference

方法 take

take(idxs: ndarray) → Difference

方法 update

update(ga: 'GroupedArrayT') → ndarray

更新每个序列的最新观察值

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 更新后的数据数组。

AutoDifferences

找到并对每个组应用最佳差分次数。

参数

  • max_diffs (int): 最大应用差分次数。

方法 __init__

__init__(max_diffs: int)

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

计算并对每个组应用最佳差分次数

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

反转差分

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('AutoDifferences')]) → AutoDifferences

方法 take

take(idxs: ndarray) → AutoDifferences

方法 update

update(ga: 'GroupedArrayT') → ndarray

更新每个序列的最新观察值

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 更新后的数据数组。

AutoSeasonalDifferences

找到并对每个组应用最佳季节性差分次数。

参数

  • season_length (int): 季节周期的长度。
  • max_diffs (int): 最大应用差分次数。
  • n_seasons (int | None): 用于确定差分次数的季节数。默认为 10。如果为 None,将使用所有样本,否则将使用 season_length * n_seasons 个样本进行测试。较小的值会更快但可能准确性较低。

方法 __init__

__init__(season_length: int, max_diffs: int, n_seasons: Optional[int] = 10)

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

计算并对每个组应用最佳季节性差分次数

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

反转季节性差分

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(scalers: Sequence[ForwardRef('AutoDifferences')]) → AutoDifferences

方法 take

take(idxs: ndarray) → AutoDifferences

方法 update

update(ga: 'GroupedArrayT') → ndarray

更新每个序列的最新观察值

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 更新后的数据数组。

AutoSeasonalityAndDifferences

找到季节周期的长度并对每个组应用最佳差分次数。

参数

  • max_season_length (int): 季节周期的最大长度。
  • max_diffs (int): 最大应用差分次数。
  • n_seasons (int | None): 用于确定差分次数的季节数。默认为 10。如果为 None,将使用所有样本,否则将使用 max_season_length * n_seasons 个样本进行测试。较小的值会更快但可能准确性较低。

方法 __init__

__init__(max_season_length: int, max_diffs: int, n_seasons: Optional[int] = 10)

方法 fit_transform

fit_transform(ga: 'GroupedArrayT') → ndarray

计算最佳季节周期长度并对每个组应用最佳差分次数

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 变换后的数据数组。

方法 inverse_transform

inverse_transform(ga: 'GroupedArrayT') → ndarray

反转季节性差分

参数

  • ga (GroupedArray): 分组数据的数组。

返回

  • np.ndarray: 反转变换后的数据数组。

方法 stack

stack(
    scalers: Sequence[ForwardRef('AutoSeasonalityAndDifferences')]
) → AutoSeasonalityAndDifferences

方法 take

take(idxs: ndarray) → AutoSeasonalityAndDifferences

方法 update

update(ga: 'GroupedArrayT') → ndarray

此文件由 lazydocs 自动生成。