ray.data.预处理器.标签编码器#
- class ray.data.preprocessors.LabelEncoder(label_column: str)[源代码]#
基类:
Preprocessor
将标签编码为整数目标。
LabelEncoder
将标签编码为整数目标,范围从 \(0\) 到 \(n - 1\),其中 \(n\) 是唯一标签的数量。如果你转换一个在拟合数据集中不存在的标签,那么该标签将被编码为
float("nan")
。示例
>>> import pandas as pd >>> import ray >>> df = pd.DataFrame({ ... "sepal_width": [5.1, 7, 4.9, 6.2], ... "sepal_height": [3.5, 3.2, 3, 3.4], ... "species": ["setosa", "versicolor", "setosa", "virginica"] ... }) >>> ds = ray.data.from_pandas(df) >>> >>> from ray.data.preprocessors import LabelEncoder >>> encoder = LabelEncoder(label_column="species") >>> encoder.fit_transform(ds).to_pandas() sepal_width sepal_height species 0 5.1 3.5 0 1 7.0 3.2 1 2 4.9 3.0 0 3 6.2 3.4 2
如果你转换的标签在原始数据集中不存在,那么新标签会被编码为
float("nan")
。>>> df = pd.DataFrame({ ... "sepal_width": [4.2], ... "sepal_height": [2.7], ... "species": ["bracteata"] ... }) >>> ds = ray.data.from_pandas(df) >>> encoder.transform(ds).to_pandas() sepal_width sepal_height species 0 4.2 2.7 NaN
- 参数:
label_column – 包含您想要编码的标签的列。
参见
OrdinalEncoder
如果你在编码有序特征,请使用
OrdinalEncoder
而不是LabelEncoder
。
PublicAPI (alpha): 此API处于alpha阶段,可能在稳定之前发生变化。
方法
加载通过
self.serialize()
序列化的原始预处理器。将此预处理器适配到数据集。
将此预处理器适配到数据集,然后转换数据集。
对给定的数据集进行逆变换。
批处理格式提示上游生产者尝试生成最佳块格式。
返回此预处理器的字符串序列化表示。
转换给定的数据集。
转换单个批次的数据。