paddlets.transform.sklearn_transforms

class OneHot(cols: ~typing.Union[str, ~typing.List[str]], dtype: object = <class 'numpy.float64'>, handle_unknown: str = 'error', categories: ~typing.Union[str, ~typing.List[str]] = 'auto', drop: bool = False)[源代码]

基类:SklearnTransformWrapper

使用one-hot编码转换dataset

参数
  • cols (str|List) – 编码的数据列。

  • handle_unknown (str) – 可选值为{‘error’, ‘ignore’}, 默认为error

  • drop (bool) – 是否要删除原来列, 默认为不删除

  • dtype (object) – 数据类型,默认为float

  • categorie (str|List) – auto或者指定的数组类型,默认是auto,代表自动从数据集中确定类别

返回

None

class Ordinal(cols: Union[str, List[str]], dtype: dtype = dtype('float64'), categories: Union[str, List[str]] = 'auto', unknown_value: Union[None, int] = None, handle_unknown: str = 'error', drop: bool = False)[源代码]

基类:SklearnTransformWrapper

将分类特征编码为ordinal数值数组

参数
  • cols (str|List) – 需要进行编码的列名

  • handle_unknown (str) – 可选值为{‘error’, ‘use_encoded_value’}, 默认为erro

  • drop (bool) – 是否在原数据上进行转换,默认否。

  • dtype (object) – 数据类型,默认为float

  • unknown_value (str) – 类型为int类型或者为None,默认为None

  • categorie (str|List) – ‘auto’或数组类型,默认=’auto’,如果categorie 是’auto’,它会根据训练数据自动确定类别。如果类别是列表, categorie[i] 保存第 i 列中预期的类别。传递的类别不能混合字符串和数值,如果是数值则要排序

返回

None

fit(dataset: Union[TSDataset, List[TSDataset]])[源代码]

从输入dataset数据集中学习transformer所需的参数。

任何继承自此类的非抽象子类均需实现此方法。

该方法训练的参数和具体的transformer有关。举例来说,MinMaxScaler 需要计算 最大值(MAX)和最小值(MIN),同时 StandardScaler 需要计算均值(MEAN)和标准偏差(standard deviation)。

参数

dataset (Union[TSDataset, List[TSDataset]]) – 用于训练transformer的数据集。

transform(dataset: Union[TSDataset, List[TSDataset]], inplace: bool = False) Union[TSDataset, List[TSDataset]][源代码]

将训练完成的transformer应用于给定数据集。

任何继承自此类的非抽象子类均需实现此方法。

参数
  • dataset (Union[TSDataset, List[TSDataset]) – 待转换的输入数据。

  • inplace (bool, optional) – 若设置为True,则会执行一个就地转换。默认值为False。

返回

转换完成的数据集。

返回类型

Union[TSDataset, List[TSDataset]]

class MinMaxScaler(cols: Optional[Union[str, List[str]]] = None, f_range: tuple = (0, 1), clip: bool = False)[源代码]

基类:SklearnTransformWrapper

将需要归一化的列的值缩放到预期范围来转换数据集:[min, max]。

转换公式为:

X_std = (X - X.min) / (X.max - X.min)

X_scaled = X_std * (max - min) + min

参数
  • cols (str|List) – 归一化的数据列。

  • f_range (tuple) – tuple (min, max), default=(0, 1), 所需的转换数据范围。

  • clip (bool) – 该值为True时,保留数据的转换值裁剪到提供的特征范围。

返回

None

class StandardScaler(cols: Optional[Union[str, List[str]]] = None, with_mean: bool = True, with_std: bool = True)[源代码]

基类:SklearnTransformWrapper

通过将指定列的值缩放为零均值和单位方差来转换数据集。

转换公式为:z = (x - u) / s。

其中 u 是训练样本的平均值,如果 with_mean=False,则为 0,s 是训练样本的标准差,如果 with_std=False,则为 1。

参数
  • cols (str|List) – 归一化的数据列。

  • with_mean (bool) – 如果为 True,则在缩放之前将数据居中处理。

  • with_std (bool) – 如果为 True,则将数据缩放到单位方差(或等效地,单位标准差)。

返回

None