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,字符串是進一步按照字母順序排列) ¶
-