StringIndexer¶
-
类
pyspark.ml.feature。
StringIndexer
( *,inputCol:可选(str]=没有一个,outputCol:可选(str]=没有一个,inputCols:可选(列表(str]]=没有一个,outputCols:可选(列表(str]]=没有一个,handleInvalid:str=“错误”,stringOrderType:str=“frequencyDesc” ) ¶ -
一个标签索引器映射一个字符串列的索引标签的ML列标签。如果输入列数字,我们丢给字符串和字符串的索引值。指数在[0,numLabels)。默认情况下,这是命令标签频率最常见的标签被索引0。订购行为是通过设置控制
stringOrderType
。其默认值是“frequencyDesc”。例子
> > >stringIndexer=StringIndexer(inputCol=“标签”,outputCol=“索引”,…stringOrderType=“frequencyDesc”)> > >stringIndexer。setHandleInvalid(“错误”)StringIndexer……> > >模型=stringIndexer。适合(stringIndDf)> > >模型。setHandleInvalid(“错误”)StringIndexerModel……> > >道明=模型。变换(stringIndDf)> > >排序(集(((我(0),我(1])为我在道明。选择(道明。id,道明。索引)。收集()))…关键=λx:x(0])[(0,0.0),(2.0)、(1.0)、(0.0)、(0.0)、(1.0)]> > >逆变器=IndexToString(inputCol=“索引”,outputCol=“label2”,标签=模型。标签)> > >itd=逆变器。变换(道明)> > >排序(集(((我(0),str(我(1)))为我在itd。选择(itd。id,itd。label2)。收集()))…关键=λx:x(0])[(0,a)、(b), (2, ' c '), (3 ' '), (4 ' '), (5 ' c '))> > >stringIndexerPath=temp_path+“/ string-indexer”> > >stringIndexer。保存(stringIndexerPath)> > >loadedIndexer=StringIndexer。负载(stringIndexerPath)> > >loadedIndexer。getHandleInvalid()= =stringIndexer。getHandleInvalid()真正的> > >modelPath=temp_path+“/ string-indexer-model”> > >模型。保存(modelPath)> > >loadedModel=StringIndexerModel。负载(modelPath)> > >loadedModel。标签= =模型。标签真正的> > >indexToStringPath=temp_path+“/ index-to-string”> > >逆变器。保存(indexToStringPath)> > >loadedInverter=IndexToString。负载(indexToStringPath)> > >loadedInverter。getLabels()= =逆变器。getLabels()真正的> > >loadedModel。变换(stringIndDf)。取(1)= =模型。变换(stringIndDf)。取(1)真正的> > >stringIndexer。getStringOrderType()“frequencyDesc”> > >stringIndexer=StringIndexer(inputCol=“标签”,outputCol=“索引”,handleInvalid=“错误”,…stringOrderType=“alphabetDesc”)> > >模型=stringIndexer。适合(stringIndDf)> > >道明=模型。变换(stringIndDf)> > >排序(集(((我(0),我(1])为我在道明。选择(道明。id,道明。索引)。收集()))…关键=λx:x(0])[(0,2.0),(1.0)、(0.0)、(2.0)、(2.0)、(0.0)]> > >fromlabelsModel=StringIndexerModel。from_labels([“一个”,“b”,“c”),…inputCol=“标签”,outputCol=“索引”,handleInvalid=“错误”)> > >结果=fromlabelsModel。变换(stringIndDf)> > >排序(集(((我(0),我(1])为我在结果。选择(结果。id,结果。索引)。收集()))…关键=λx:x(0])[(0,0.0),(1.0)、(2.0)、(0.0)、(0.0)、(2.0)]> > >testData=sc。并行化([行(id=0,label1=“一个”,label2=“e”),…行(id=1,label1=“b”,label2=“f”),…行(id=2,label1=“c”,label2=“e”),…行(id=3,label1=“一个”,label2=“f”),…行(id=4,label1=“一个”,label2=“f”),…行(id=5,label1=“c”,label2=“f”)),3)> > >multiRowDf=火花。createDataFrame(testData)> > >输入=(“label1”,“label2”]> > >输出=(“index1”,“index2”]> > >stringIndexer=StringIndexer(inputCols=输入,outputCols=输出)> > >模型=stringIndexer。适合(multiRowDf)> > >结果=模型。变换(multiRowDf)> > >排序(集(((我(0),我(1),我(2])为我在结果。选择(结果。id,结果。index1,…结果。index2)。收集()))关键=λx:x(0])((0,0.0,1.0),(1,2.0,0.0),(2,1.0,1.0),(3,0.0,0.0),(0.0,0.0),(5、1.0、0.0)]> > >fromlabelsModel=StringIndexerModel。from_arrays_of_labels([[“一个”,“b”,“c”),(“e”,“f”]],…inputCols=输入,outputCols=输出)> > >结果=fromlabelsModel。变换(multiRowDf)> > >排序(集(((我(0),我(1),我(2])为我在结果。选择(结果。id,结果。index1,…结果。index2)。收集()))关键=λx:x(0])((0,0.0,0.0),(1,1.0,1.0),(2,2.0,0.0),(3,0.0,1.0),(0.0,1.0),(5、2.0、1.0)]
方法
清晰的
(参数)清除参数映射的参数是否被显式地设置。
复制
((额外的))创建这个实例的副本具有相同uid和一些额外的参数。
explainParam
(参数)解释一个参数并返回它的名字,医生,和可选的默认值,用户提供的字符串值。
返回文档的所有参数选择默认值和用户提供的值。
extractParamMap
((额外的))提取嵌入默认参数值和用户提供的值,然后合并他们额外的值从输入平面参数映射,后者使用价值如果存在冲突,即。排序:默认参数值< <额外的用户提供的值。
适合
(数据集[params))适合一个模型与可选参数的输入数据集。
fitMultiple
(paramMaps数据集)适合一个模型为每个参数映射的输入数据集paramMaps。
得到的价值handleInvalid或其默认值。
得到的价值inputCol或其默认值。
得到的价值inputCols或其默认值。
getOrDefault
(参数)得到参数的值在用户提供的参数映射或其默认值。
得到的价值outputCol或其默认值。
得到的价值outputCols或其默认值。
getParam
(paramName)通过它的名称参数。
获得的价值
stringOrderType
或其默认值“frequencyDesc”。hasDefault
(参数)检查是否一个参数有默认值。
hasParam
(paramName)测试这个实例包含一个参数是否与给定名称(字符串)。
isDefined
(参数)检查参数是否由用户或显式地设置一个默认值。
收取
(参数)检查参数是否由用户显式地设置。
负载
(路径)从输入路径,读取一个毫升实例的快捷方式read () .load(路径)。
读
()返回一个MLReader这个类的实例。
保存
(路径)这个毫升实例保存到给定的路径,一个快捷方式的“写().save(路径)。
集
(参数值)设置一个参数嵌入参数映射。
设置的值
handleInvalid
。setInputCol
(值)设置的值
inputCol
。setInputCols
(值)设置的值
inputCols
。setOutputCol
(值)设置的值
outputCol
。设置的值
outputCols
。setparam
(自我,\ [,outputCol inputCol…))为这个StringIndexer设置参数。
设置的值
stringOrderType
。写
()返回一个MLWriter实例毫升实例。
属性
返回所有参数命令的名字。
方法的文档
-
清晰的
( 参数:pyspark.ml.param.Param )→没有¶ -
清除参数映射的参数是否被显式地设置。
-
复制
( 额外的:可选(ParamMap]=没有一个 )→摩根大通¶ -
创建这个实例的副本具有相同uid和一些额外的参数。这个实现第一次调用参数。复制and 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(指数)。指数值可能不是连续的。
-
-
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 ¶ -
通过它的名称参数。
-
getStringOrderType
( )→str¶ -
获得的价值
stringOrderType
或其默认值“frequencyDesc”。
-
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,价值:任何 )→没有¶ -
设置一个参数嵌入参数映射。
-
setHandleInvalid
( 价值:str )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
handleInvalid
。
-
setInputCol
( 价值:str )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
inputCol
。
-
setInputCols
( 价值:列表(str] )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
inputCols
。
-
setOutputCol
( 价值:str )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
outputCol
。
-
setOutputCols
( 价值:列表(str] )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
outputCols
。
-
setparam
( 自我,\ *,inputCol =没有,outputCol =没有,inputCols =没有,outputCols =没有,handleInvalid = "错误",stringOrderType = " frequencyDesc " ) ¶ -
为这个StringIndexer设置参数。
-
setStringOrderType
( 价值:str )→pyspark.ml.feature.StringIndexer ¶ -
设置的值
stringOrderType
。
-
写
( )→pyspark.ml.util.JavaMLWriter¶ -
返回一个MLWriter实例毫升实例。
属性的文档
-
handleInvalid
=参数(父母=‘定义’,name = ' handleInvalid ', doc = "如何处理无效数据(看不见的或NULL值)的特性和标签列字符串类型。选择“跳过”(过滤掉行无效数据),错误(抛出一个错误),或“保持”(把无效的数据放在一个特别的额外的桶,在指数numLabels)。”) ¶
-
inputCol
=参数(父母=‘定义’,name = ' inputCol ', doc =输入列名称。) ¶
-
inputCols
=参数(父母=‘定义’,name = ' inputCols ', doc =输入列名称。) ¶
-
outputCol
=参数(父母=‘定义’,name = ' outputCol ', doc =输出列名称。) ¶
-
outputCols
=参数(父母=‘定义’,name = ' outputCols ', doc =输出列名称。) ¶
-
参数个数
¶ -
返回所有参数命令的名字。默认实现使用
dir ()
所有的属性类型参数
。
-
stringOrderType
=参数(父母=‘定义’,name = ' stringOrderType ', doc = '如何订购标签的字符串列。排序后的第一个标签分配索引为0。支持选择:frequencyDesc、frequencyAsc alphabetDesc alphabetAsc。默认是frequencyDesc。在相同的频率下frequencyDesc / Asc,字符串是进一步按照字母顺序排列) ¶
-