MaxAbsScaler ¶
-
class
pyspark.ml.feature.MaxAbsScaler( * , inputCol : Optional [ str ] = None , outputCol : Optional [ str ] = None ) [source] ¶ -
将每个特征单独缩放到范围 [-1, 1],方法是将其除以每个特征中的最大绝对值。它不会移动/居中数据,因此不会破坏任何稀疏性。
新增于版本 2.0.0。
示例
>>> from pyspark.ml.linalg import Vectors >>> df = spark.createDataFrame([(Vectors.dense([1.0]),), (Vectors.dense([2.0]),)], ["a"]) >>> maScaler = MaxAbsScaler(outputCol="scaled") >>> maScaler.setInputCol("a") MaxAbsScaler... >>> model = maScaler.fit(df) >>> model.setOutputCol("scaledOutput") MaxAbsScalerModel... >>> model.transform(df).show() +-----+------------+ | a|scaledOutput| +-----+------------+ |[1.0]| [0.5]| |[2.0]| [1.0]| +-----+------------+ ... >>> scalerPath = temp_path + "/max-abs-scaler" >>> maScaler.save(scalerPath) >>> loadedMAScaler = MaxAbsScaler.load(scalerPath) >>> loadedMAScaler.getInputCol() == maScaler.getInputCol() True >>> loadedMAScaler.getOutputCol() == maScaler.getOutputCol() True >>> modelPath = temp_path + "/max-abs-scaler-model" >>> model.save(modelPath) >>> loadedModel = MaxAbsScalerModel.load(modelPath) >>> loadedModel.maxAbs == model.maxAbs True >>> loadedModel.transform(df).take(1) == model.transform(df).take(1) True
方法
clear(参数)如果参数已明确设置,则从参数映射中清除该参数。
copy([extra])创建此实例的副本,具有相同的uid和一些额外的参数。
explainParam(参数)解释单个参数并返回其名称、文档以及可选的默认值和用户提供的值的字符串。
返回所有参数的文档,包括它们可选的默认值和用户提供的值。
extractParamMap([extra])提取嵌入的默认参数值和用户提供的值,然后将它们与输入中的额外值合并到一个扁平的参数映射中,如果存在冲突,则使用后者的值,即顺序为:默认参数值 < 用户提供的值 < 额外值。
fit(数据集[, 参数])使用可选参数将模型拟合到输入数据集。
fitMultiple(数据集, 参数映射)为输入数据集中的每个参数映射拟合一个模型。
getInputCol()获取inputCol的值或其默认值。
getOrDefault(参数)获取用户提供的参数映射中的参数值或其默认值。
getOutputCol()获取outputCol的值或其默认值。
getParam(paramName)根据名称获取参数。
hasDefault(参数)检查参数是否具有默认值。
hasParam(paramName)测试此实例是否包含具有给定(字符串)名称的参数。
isDefined(参数)检查参数是否由用户显式设置或具有默认值。
isSet(参数)检查参数是否被用户显式设置。
load(路径)从输入路径读取一个ML实例,是 read().load(path) 的快捷方式。
read()返回此类的一个 MLReader 实例。
save(路径)将此 ML 实例保存到给定路径,是 ‘write().save(path)’ 的快捷方式。
set(参数, 值)在嵌入的参数映射中设置一个参数。
setInputCol(值)设置
inputCol的值。setOutputCol(值)设置
outputCol的值。setParams(self, \*[, inputCol, outputCol])设置此 MaxAbsScaler 的参数。
write()返回此ML实例的MLWriter实例。
属性
返回按名称排序的所有参数。
方法文档
-
clear( param : pyspark.ml.param.Param ) → None ¶ -
如果参数已明确设置,则从参数映射中清除该参数。
-
copy( extra : Optional [ ParamMap ] = None ) → JP ¶ -
创建此实例的副本,具有相同的uid和一些额外的参数。此实现首先调用Params.copy,然后使用额外参数复制伴随的Java管道组件。因此,Python包装器和Java管道组件都会被复制。
- Parameters
-
- extra dict, optional
-
复制到新实例的额外参数
- Returns
-
-
JavaParams -
此实例的副本
-
-
explainParam( param : Union [ str , pyspark.ml.param.Param ] ) → str ¶ -
解释单个参数并返回其名称、文档以及可选的默认值和用户提供的值的字符串。
-
explainParams( ) → str ¶ -
返回所有参数的文档,包括它们可选的默认值和用户提供的值。
-
extractParamMap( extra : Optional [ ParamMap ] = None ) → ParamMap ¶ -
提取嵌入的默认参数值和用户提供的值,然后将它们与输入中的额外值合并到一个扁平的参数映射中,如果存在冲突,则使用后者的值,即顺序为:默认参数值 < 用户提供的值 < 额外值。
- Parameters
-
- extra dict, optional
-
额外参数值
- Returns
-
- dict
-
合并的参数映射
-
fit( dataset : pyspark.sql.dataframe.DataFrame , params : Union[ParamMap, List[ParamMap], Tuple[ParamMap], None] = None ) → Union [ M , List [ M ] ] ¶ -
使用可选参数将模型拟合到输入数据集。
新增于版本 1.3.0。
- Parameters
-
-
dataset
pyspark.sql.DataFrame -
输入数据集。
- params dict or list or tuple, optional
-
一个可选的参数映射,用于覆盖嵌入的参数。如果给定了一个参数映射的列表/元组,这将调用每个参数映射上的fit方法,并返回一个模型列表。
-
dataset
- Returns
-
-
Transformeror a list ofTransformer -
拟合模型
-
-
fitMultiple( dataset : pyspark.sql.dataframe.DataFrame , paramMaps : Sequence [ ParamMap ] ) → Iterator [ Tuple [ int , M ] ] ¶ -
为输入数据集中的每个参数映射拟合一个模型。
新增于版本 2.3.0。
- Parameters
-
-
dataset
pyspark.sql.DataFrame -
输入数据集。
-
paramMaps
collections.abc.Sequence -
一系列参数映射。
-
dataset
- Returns
-
-
_FitMultipleIterator -
一个线程安全的可迭代对象,其中包含每个参数映射的一个模型。每次调用 next(modelIterator) 将返回 (index, model) ,其中模型是使用 paramMaps[index] 拟合的。 index 值可能不是连续的。
-
-
getInputCol( ) → str ¶ -
获取inputCol的值或其默认值。
-
getOrDefault( param : Union [ str , pyspark.ml.param.Param [ T ] ] ) → Union [ Any , T ] ¶ -
获取用户提供的参数映射中的参数值或其默认值。如果两者都未设置,则引发错误。
-
getOutputCol( ) → str ¶ -
获取outputCol的值或其默认值。
-
getParam( paramName : str ) → pyspark.ml.param.Param ¶ -
根据名称获取参数。
-
hasDefault( param : Union [ str , pyspark.ml.param.Param [ Any ] ] ) → bool ¶ -
检查参数是否具有默认值。
-
hasParam( paramName : str ) → bool ¶ -
测试此实例是否包含具有给定(字符串)名称的参数。
-
isDefined( param : Union [ str , pyspark.ml.param.Param [ Any ] ] ) → bool ¶ -
检查参数是否由用户显式设置或具有默认值。
-
isSet( param : Union [ str , pyspark.ml.param.Param [ Any ] ] ) → bool ¶ -
检查参数是否被用户显式设置。
-
classmethod
load( path : str ) → RL ¶ -
从输入路径读取一个ML实例,是 read().load(path) 的快捷方式。
-
classmethod
read( ) → pyspark.ml.util.JavaMLReader [ RL ] ¶ -
返回此类的一个 MLReader 实例。
-
save( path : str ) → None ¶ -
将此 ML 实例保存到给定路径,是 ‘write().save(path)’ 的快捷方式。
-
set( param : pyspark.ml.param.Param , value : Any ) → None ¶ -
在嵌入的参数映射中设置一个参数。
-
setInputCol( value : str ) → pyspark.ml.feature.MaxAbsScaler [source] ¶ -
设置
inputCol的值。
-
setOutputCol( value : str ) → pyspark.ml.feature.MaxAbsScaler [source] ¶ -
设置
outputCol的值。
-
setParams( self , \* , inputCol=None , outputCol=None ) [source] ¶ -
设置此 MaxAbsScaler 的参数。
新增于版本 2.0.0。
-
write( ) → pyspark.ml.util.JavaMLWriter ¶ -
返回此ML实例的MLWriter实例。
属性文档
-
inputCol= Param(parent='undefined', name='inputCol', doc='input column name.') ¶
-
outputCol= Param(parent='undefined', name='outputCol', doc='output column name.') ¶
-
params¶ -
返回按名称排序的所有参数。默认实现使用
dir()获取所有类型为Param的属性。
-