VectorSizeHint

class pyspark.ml.feature. VectorSizeHint ( * , inputCol : Optional [ str ] = None , size : Optional [ int ] = None , handleInvalid : str = 'error' ) [source]

一个特征转换器,向向量列的元数据添加大小信息。 VectorAssembler 需要其输入列的大小信息,并且不能在没有此元数据的情况下用于流数据帧。

新增于版本 2.3.0。

注释

VectorSizeHint 修改 inputCol 以包含大小元数据,并且没有 outputCol。

示例

>>> from pyspark.ml.linalg import Vectors
>>> from pyspark.ml import Pipeline, PipelineModel
>>> data = [(Vectors.dense([1., 2., 3.]), 4.)]
>>> df = spark.createDataFrame(data, ["vector", "float"])
>>>
>>> sizeHint = VectorSizeHint(inputCol="vector", size=3, handleInvalid="skip")
>>> vecAssembler = VectorAssembler(inputCols=["vector", "float"], outputCol="assembled")
>>> pipeline = Pipeline(stages=[sizeHint, vecAssembler])
>>>
>>> pipelineModel = pipeline.fit(df)
>>> pipelineModel.transform(df).head().assembled
DenseVector([1.0, 2.0, 3.0, 4.0])
>>> vectorSizeHintPath = temp_path + "/vector-size-hint-pipeline"
>>> pipelineModel.save(vectorSizeHintPath)
>>> loadedPipeline = PipelineModel.load(vectorSizeHintPath)
>>> loaded = loadedPipeline.transform(df).head().assembled
>>> expected = pipelineModel.transform(df).head().assembled
>>> loaded == expected
True

方法

clear (参数)

如果参数已明确设置,则从参数映射中清除该参数。

copy ([extra])

创建此实例的副本,具有相同的uid和一些额外的参数。

explainParam (参数)

解释单个参数并返回其名称、文档以及可选的默认值和用户提供的值的字符串。

explainParams ()

返回所有参数的文档,包括它们可选的默认值和用户提供的值。

extractParamMap ([extra])

提取嵌入的默认参数值和用户提供的值,然后将它们与输入中的额外值合并到一个扁平的参数映射中,如果存在冲突,则使用后者的值,即顺序为:默认参数值 < 用户提供的值 < 额外值。

getHandleInvalid ()

获取handleInvalid的值或其默认值。

getInputCol ()

获取inputCol的值或其默认值。

getOrDefault (参数)

获取用户提供的参数映射中的参数值或其默认值。

getParam (paramName)

根据名称获取参数。

getSize ()

获取大小参数,即 inputCol 中向量的尺寸。

hasDefault (参数)

检查参数是否具有默认值。

hasParam (paramName)

测试此实例是否包含具有给定(字符串)名称的参数。

isDefined (参数)

检查参数是否由用户显式设置或具有默认值。

isSet (参数)

检查参数是否被用户显式设置。

load (路径)

从输入路径读取一个ML实例,是 read().load(path) 的快捷方式。

read ()

返回此类的一个 MLReader 实例。

save (路径)

将此 ML 实例保存到给定路径,是 ‘write().save(path)’ 的快捷方式。

set (参数, 值)

在嵌入的参数映射中设置一个参数。

setHandleInvalid (值)

设置 handleInvalid 的值。

setInputCol (值)

设置 inputCol 的值。

setParams (self, \*[, inputCol, size, …])

设置此 VectorSizeHint 的参数。

setSize (值)

设置大小参数,即 inputCol 中向量的尺寸。

transform (数据集[, 参数])

使用可选参数转换输入数据集。

write ()

返回此ML实例的MLWriter实例。

属性

handleInvalid

inputCol

参数

返回按名称排序的所有参数。

大小

方法文档

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

合并的参数映射

getHandleInvalid ( ) → str

获取handleInvalid的值或其默认值。

getInputCol ( ) → str

获取inputCol的值或其默认值。

getOrDefault ( param : Union [ str , pyspark.ml.param.Param [ T ] ] ) → Union [ Any , T ]

获取用户提供的参数映射中的参数值或其默认值。如果两者都未设置,则引发错误。

getParam ( paramName : str ) pyspark.ml.param.Param

根据名称获取参数。

getSize ( ) → int [source]

获取大小参数,即 inputCol 中向量的尺寸。

新增于版本 2.3.0。

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

在嵌入的参数映射中设置一个参数。

setHandleInvalid ( value : str ) pyspark.ml.feature.VectorSizeHint [source]

设置 handleInvalid 的值。

setInputCol ( value : str ) pyspark.ml.feature.VectorSizeHint [source]

设置 inputCol 的值。

setParams ( self , \* , inputCol=None , size=None , handleInvalid="error" ) [source]

设置此 VectorSizeHint 的参数。

新增于版本 2.3.0。

setSize ( value : int ) pyspark.ml.feature.VectorSizeHint [source]

设置大小参数,即 inputCol 中向量的尺寸。

新增于版本 2.3.0。

transform ( dataset : pyspark.sql.dataframe.DataFrame , params : Optional [ ParamMap ] = None ) → pyspark.sql.dataframe.DataFrame

使用可选参数转换输入数据集。

新增于版本 1.3.0。

Parameters
dataset pyspark.sql.DataFrame

输入数据集

params dict, optional

一个可选的参数映射,用于覆盖嵌入的参数。

Returns
pyspark.sql.DataFrame

转换后的数据集

write ( ) → pyspark.ml.util.JavaMLWriter

返回此ML实例的MLWriter实例。

属性文档

handleInvalid : pyspark.ml.param.Param[str] = Param(parent='undefined', name='handleInvalid', doc='How to handle invalid vectors in inputCol. Invalid vectors include nulls and vectors with the wrong size. The options are `skip` (filter out rows with invalid vectors), `error` (throw an error) and `optimistic` (do not check the vector size, and keep all rows). `error` by default.')
inputCol = Param(parent='undefined', name='inputCol', doc='input column name.')
params

返回按名称排序的所有参数。默认实现使用 dir() 获取所有类型为 Param 的属性。

size : pyspark.ml.param.Param[int] = Param(parent='undefined', name='size', doc='Size of vectors in column.')