第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

OneHotEncoder categorical_features 已棄用,如何轉(zhuǎn)換特定列

OneHotEncoder categorical_features 已棄用,如何轉(zhuǎn)換特定列

桃花長(zhǎng)相依 2021-10-19 15:36:18
我需要將獨(dú)立字段從字符串轉(zhuǎn)換為算術(shù)符號(hào)。我正在使用 OneHotEncoder 進(jìn)行轉(zhuǎn)換。我的數(shù)據(jù)集有許多獨(dú)立的列,其中一些是:Country     |    Age       --------------------------Germany     |    23Spain       |    25Germany     |    24Italy       |    30 我必須對(duì) Country 列進(jìn)行編碼0     |    1     |     2     |       3--------------------------------------1     |    0     |     0     |      230     |    1     |     0     |      251     |    0     |     0     |      24 0     |    0     |     1     |      30我成功地通過(guò)使用 OneHotEncoder 作為#Encoding the categorical datafrom sklearn.preprocessing import LabelEncoderlabelencoder_X = LabelEncoder()X[:,0] = labelencoder_X.fit_transform(X[:,0])#we are dummy encoding as the machine learning algorithms will be#confused with the values like Spain > Germany > Francefrom sklearn.preprocessing import OneHotEncoderonehotencoder = OneHotEncoder(categorical_features=[0])X = onehotencoder.fit_transform(X).toarray()現(xiàn)在我收到了要使用的折舊消息categories='auto'。如果我這樣做,將對(duì)所有獨(dú)立列(如國(guó)家、年齡、工資等)進(jìn)行轉(zhuǎn)換。如何僅在數(shù)據(jù)集第 0 列上實(shí)現(xiàn)轉(zhuǎn)換?
查看完整描述

3 回答

?
月關(guān)寶盒

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊

實(shí)際上有2個(gè)警告:


FutureWarning:整數(shù)數(shù)據(jù)的處理將在 0.22 版本中更改。目前,類別是根據(jù)范圍 [0, max(values)] 確定的,而將來(lái)它們將根據(jù)唯一值確定。如果您想要未來(lái)的行為并消除此警告,您可以指定“categories='auto'”。如果您在此 OneHotEncoder 之前使用 LabelEncoder 將類別轉(zhuǎn)換為整數(shù),那么您現(xiàn)在可以直接使用 OneHotEncoder。


第二個(gè):


'categorical_features' 關(guān)鍵字在 0.20 版中已棄用,并將在 0.22 版中刪除。您可以改用 ColumnTransformer。

“改用 ColumnTransformer。”,DeprecationWarning)


將來(lái),您不應(yīng)直接在 OneHotEncoder 中定義列,除非您想使用“categories='auto'”。第一條消息還告訴您直接使用 OneHotEncoder,而不是先使用 LabelEncoder。最后,第二條消息告訴您使用 ColumnTransformer,它就像用于列轉(zhuǎn)換的管道。


這是您案例的等效代碼:


from sklearn.compose import ColumnTransformer 

ct = ColumnTransformer([("Name_Of_Your_Step", OneHotEncoder(),[0])], remainder="passthrough")) # The last arg ([0]) is the list of columns you want to transform in this step

ct.fit_transform(X)    

另請(qǐng)參閱:ColumnTransformer 文檔


對(duì)于上面的例子;


編碼分類數(shù)據(jù)(基本上將文本更改為數(shù)字?jǐn)?shù)據(jù),即國(guó)家/地區(qū)名稱)


from sklearn.preprocessing import LabelEncoder, OneHotEncoder

from sklearn.compose import ColumnTransformer

#Encode Country Column

labelencoder_X = LabelEncoder()

X[:,0] = labelencoder_X.fit_transform(X[:,0])

ct = ColumnTransformer([("Country", OneHotEncoder(), [0])], remainder = 'passthrough')

X = ct.fit_transform(X)


查看完整回答
反對(duì) 回復(fù) 2021-10-19
  • 3 回答
  • 0 關(guān)注
  • 498 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)