ray.data.预处理器.简单填充器#
- class ray.data.preprocessors.SimpleImputer(columns: List[str], strategy: str = 'mean', fill_value: str | Number | None = None)[源代码]#
基类:
Preprocessor
用插补值替换缺失值。
示例
>>> import pandas as pd >>> import ray >>> from ray.data.preprocessors import SimpleImputer >>> df = pd.DataFrame({"X": [0, None, 3, 3], "Y": [None, "b", "c", "c"]}) >>> ds = ray.data.from_pandas(df) >>> ds.to_pandas() X Y 0 0.0 None 1 NaN b 2 3.0 c 3 3.0 c
"mean"
策略用非缺失值的平均值来填补缺失值。这种策略不适用于分类数据。>>> preprocessor = SimpleImputer(columns=["X"], strategy="mean") >>> preprocessor.fit_transform(ds).to_pandas() X Y 0 0.0 None 1 2.0 b 2 3.0 c 3 3.0 c
"most_frequent"
策略用每列中最频繁的值来填补缺失值。>>> preprocessor = SimpleImputer(columns=["X", "Y"], strategy="most_frequent") >>> preprocessor.fit_transform(ds).to_pandas() X Y 0 0.0 c 1 3.0 b 2 3.0 c 3 3.0 c
"constant"
策略使用fill_value
指定的值来填补缺失值。>>> preprocessor = SimpleImputer( ... columns=["Y"], ... strategy="constant", ... fill_value="?", ... ) >>> preprocessor.fit_transform(ds).to_pandas() X Y 0 0.0 ? 1 NaN b 2 3.0 c 3 3.0 c
- 参数:
columns – 要应用插补的列。
strategy – 如何选择填补值。 *
"mean"
: 非缺失值的平均值。此策略仅适用于数值列。 *"most_frequent"
: 最常见的值。 *"constant"
: 传递给fill_value
的值。fill_value – 当
strategy
为"constant"
时使用的值。
- 抛出:
ValueError – 如果
strategy
不是"mean"
、"most_frequent"
或"constant"
。
PublicAPI (alpha): 此API处于alpha阶段,可能在稳定之前发生变化。
方法
加载通过
self.serialize()
序列化的原始预处理器。将此预处理器适配到数据集。
将此预处理器适配到数据集,然后转换数据集。
批处理格式提示上游生产者尝试生成最佳块格式。
返回此预处理器的字符串序列化表示。
转换给定的数据集。
转换单个批次的数据。