OneHotEncoder

pyspark.ml.feature。 OneHotEncoder ( *,inputCols:可选(列表(str]]=没有一个,outputCols:可选(列表(str]]=没有一个,handleInvalid:str=“错误”,dropLast:bool=真正的,inputCol:可选(str]=没有一个,outputCol:可选(str]=没有一个 )

一个地图的一个炎热的编码器类别索引的列的列二进制向量,每行最多一个一个值,指示输入类别索引。与5个类别,例如一个输入值为2.0时将映射到一个输出向量(0.0,0.0,1.0,0.0)。最后一类是不包括在默认情况下(可配置通过dropLast),因为它使向量条目总结,因此线性相关的。所以4.0地图的输入值(0.0,0.0,0.0,0.0)

handleInvalid配置为“保持”,添加一个额外的“类别”指示无效值作为最后的类别。所以,当dropLast是真的,编码为无效值都为零向量。

另请参阅

StringIndexer

定值转化为分类指标

笔记

这不同于scikit-learn OneHotEncoder,让所有类别。输出向量是稀疏的。

当编码多列使用inputColsoutputCols参数,输入/输出关口都是成对的,顺序指定的数组,每一对独立处理。

例子

> > >pyspark.ml.linalg进口向量> > >df=火花createDataFrame(((0.0),(1.0),(2.0),(“输入”])> > >咸宁=OneHotEncoder()> > >咸宁setInputCols([“输入”])OneHotEncoder……> > >咸宁setOutputCols([“输出”])OneHotEncoder……> > >模型=咸宁适合(df)> > >模型setOutputCols([“输出”])OneHotEncoderModel……> > >模型getHandleInvalid()“错误”> > >模型变换(df)()输出SparseVector ({0: 1.0})> > >single_col_ohe=OneHotEncoder(inputCol=“输入”,outputCol=“输出”)> > >single_col_model=single_col_ohe适合(df)> > >single_col_model变换(df)()输出SparseVector ({0: 1.0})> > >ohePath=temp_path+“/咸宁”> > >咸宁保存(ohePath)> > >loadedOHE=OneHotEncoder负载(ohePath)> > >loadedOHEgetInputCols()= =咸宁getInputCols()真正的> > >modelPath=temp_path+“/ ohe-model”> > >模型保存(modelPath)> > >loadedModel=OneHotEncoderModel负载(modelPath)> > >loadedModelcategorySizes= =模型categorySizes真正的> > >loadedModel变换(df)(1)= =模型变换(df)(1)真正的

方法

清晰的(参数)

清除参数映射的参数是否被显式地设置。

复制((额外的))

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

explainParam(参数)

解释一个参数并返回它的名字,医生,和可选的默认值,用户提供的字符串值。

explainParams()

返回文档的所有参数选择默认值和用户提供的值。

extractParamMap((额外的))

提取嵌入默认参数值和用户提供的值,然后合并他们额外的值从输入平面参数映射,后者使用价值如果存在冲突,即。排序:默认参数值< <额外的用户提供的值。

适合(数据集[params))

适合一个模型与可选参数的输入数据集。

fitMultiple(paramMaps数据集)

适合一个模型为每个参数映射的输入数据集paramMaps

getDropLast()

得到的价值dropLast或其默认值。

getHandleInvalid()

得到的价值handleInvalid或其默认值。

getInputCol()

得到的价值inputCol或其默认值。

getInputCols()

得到的价值inputCols或其默认值。

getOrDefault(参数)

得到参数的值在用户提供的参数映射或其默认值。

getOutputCol()

得到的价值outputCol或其默认值。

getOutputCols()

得到的价值outputCols或其默认值。

getParam(paramName)

通过它的名称参数。

hasDefault(参数)

检查是否一个参数有默认值。

hasParam(paramName)

测试这个实例包含一个参数是否与给定名称(字符串)。

isDefined(参数)

检查参数是否由用户或显式地设置一个默认值。

收取(参数)

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

负载(路径)

从输入路径,读取一个毫升实例的快捷方式read () .load(路径)

()

返回一个MLReader这个类的实例。

保存(路径)

这个毫升实例保存到给定的路径,一个快捷方式的“写().save(路径)。

(参数值)

设置一个参数嵌入参数映射。

setDropLast(值)

设置的值dropLast

setHandleInvalid(值)

设置的值handleInvalid

setInputCol(值)

设置的值inputCol

setInputCols(值)

设置的值inputCols

setOutputCol(值)

设置的值outputCol

setOutputCols(值)

设置的值outputCols

setparam(自我,\ [,outputCols inputCols…))

为这个OneHotEncoder设置参数。

()

返回一个MLWriter实例毫升实例。

属性

dropLast

handleInvalid

inputCol

inputCols

outputCol

outputCols

参数个数

返回所有参数命令的名字。

方法的文档

清晰的 ( 参数:pyspark.ml.param.Param )→没有

清除参数映射的参数是否被显式地设置。

复制 ( 额外的:可选(ParamMap]=没有一个 )→摩根大通

创建这个实例的副本具有相同uid和一些额外的参数。这个实现第一次调用参数。复制和then make a copy of the companion Java pipeline component with extra params. So both the Python wrapper and the Java pipeline component get copied.

参数
额外的 东西,可选

额外参数复制到新实例

返回
JavaParams

这个实例的副本

explainParam ( 参数:联盟(str,pyspark.ml.param.Param] )→str

解释一个参数并返回它的名字,医生,和可选的默认值,用户提供的字符串值。

explainParams ( )→str

返回文档的所有参数选择默认值和用户提供的值。

extractParamMap ( 额外的:可选(ParamMap]=没有一个 )→ParamMap

提取嵌入默认参数值和用户提供的值,然后合并他们额外的值从输入平面参数映射,后者使用价值如果存在冲突,即。排序:默认参数值< <额外的用户提供的值。

参数
额外的 东西,可选

额外的参数值

返回
dict

合并后的参数映射

适合 ( 数据集:pyspark.sql.dataframe.DataFrame,参数个数:联盟[ParamMap、列表(ParamMap)元组(ParamMap),没有一个)=没有一个 )→联盟(,列表(] ]

适合一个模型与可选参数的输入数据集。

参数
数据集 pyspark.sql.DataFrame

输入数据集。

参数个数 dict或列表或元组,可选的

一个可选的参数覆盖嵌入参数的地图。如果列表/元组的参数映射,这适用于每一个参数并返回一个列表的模型映射。

返回
变压器或者一个列表变压器

拟合模型(年代)

fitMultiple ( 数据集:pyspark.sql.dataframe.DataFrame,paramMaps:序列(ParamMap] )→迭代器(元组(int,] ]

适合一个模型为每个参数映射的输入数据集paramMaps

参数
数据集 pyspark.sql.DataFrame

输入数据集。

paramMaps collections.abc.Sequence

一系列的参数映射。

返回
_FitMultipleIterator

一个线程安全的iterable包含为每个参数映射模型。每次调用下一个(modelIterator)将返回(指数模型)模型是适合使用在哪里paramMaps(指数)指数值可能不是连续的。

getDropLast ( )→bool

得到的价值dropLast或其默认值。

getHandleInvalid ( )→str

得到的价值handleInvalid或其默认值。

getInputCol ( )→str

得到的价值inputCol或其默认值。

getInputCols ( )→列表(str]

得到的价值inputCols或其默认值。

getOrDefault ( 参数:联盟(str,pyspark.ml.param.Param(T]] )→联盟(任何,T]

得到参数的值在用户提供的参数映射或其默认值。如果没有设置提出了一个错误。

getOutputCol ( )→str

得到的价值outputCol或其默认值。

getOutputCols ( )→列表(str]

得到的价值outputCols或其默认值。

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

通过它的名称参数。

hasDefault ( 参数:联盟(str,pyspark.ml.param.Param(任何]] )→bool

检查是否一个参数有默认值。

hasParam ( paramName:str )→bool

测试这个实例包含一个参数是否与给定名称(字符串)。

isDefined ( 参数:联盟(str,pyspark.ml.param.Param(任何]] )→bool

检查参数是否由用户或显式地设置一个默认值。

收取 ( 参数:联盟(str,pyspark.ml.param.Param(任何]] )→bool

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

classmethod 负载 ( 路径:str )→RL

从输入路径,读取一个毫升实例的快捷方式read () .load(路径)

classmethod ( )→pyspark.ml.util.JavaMLReader(RL]

返回一个MLReader这个类的实例。

保存 ( 路径:str )→没有

这个毫升实例保存到给定的路径,一个快捷方式的“写().save(路径)。

( 参数:pyspark.ml.param.Param,价值:任何 )→没有

设置一个参数嵌入参数映射。

setDropLast ( 价值:bool )pyspark.ml.feature.OneHotEncoder

设置的值dropLast

setHandleInvalid ( 价值:str )pyspark.ml.feature.OneHotEncoder

设置的值handleInvalid

setInputCol ( 价值:str )pyspark.ml.feature.OneHotEncoder

设置的值inputCol

setInputCols ( 价值:列表(str] )pyspark.ml.feature.OneHotEncoder

设置的值inputCols

setOutputCol ( 价值:str )pyspark.ml.feature.OneHotEncoder

设置的值outputCol

setOutputCols ( 价值:列表(str] )pyspark.ml.feature.OneHotEncoder

设置的值outputCols

setparam ( 自我,\ *,inputCols =没有,outputCols =没有,handleInvalid = "错误",dropLast = True,inputCol =没有,outputCol =没有 )

为这个OneHotEncoder设置参数。

( )→pyspark.ml.util.JavaMLWriter

返回一个MLWriter实例毫升实例。

属性的文档

dropLast =参数(父母=‘定义’,name = ' dropLast ', doc =是否放弃过去的类别)
handleInvalid =参数(父母=‘定义’,name = ' handleInvalid ', doc = "期间如何处理无效数据变换()。选择“继续”(无效的数据作为一个额外的分类特性)或错误(抛出一个错误)。注意,这个参数是只用在变换;在拟合,无效的数据将导致一个错误。”)
inputCol =参数(父母=‘定义’,name = ' inputCol ', doc =输入列名称。)
inputCols =参数(父母=‘定义’,name = ' inputCols ', doc =输入列名称。)
outputCol =参数(父母=‘定义’,name = ' outputCol ', doc =输出列名称。)
outputCols =参数(父母=‘定义’,name = ' outputCols ', doc =输出列名称。)
参数个数

返回所有参数命令的名字。默认实现使用dir ()所有的属性类型参数