機器學習 資料無量綱化 5 分型別資料

2021-10-24 04:55:51 字數 1687 閱讀 9469

標籤編碼

可以處理一維資料

from sklearn.preprocessing import labelecoder

le = labelencode(

).fit_transfrom(y)

le.classes_ #屬性.classes_檢視標籤中究竟有多少類別

特徵編碼

from sklearn.preprocessing import ordinalencoder

ordinalencoder(

).fit(data_.iloc[:,

1:-1

]).categories_

#檢視有多少種標籤

data_.iloc[:,

1:-1

]= ordinalencoder(

).fit_transform(data_.iloc[:,

1:-1

])data_.head(

)

from sklearn.preprocessing import onehotencoder

#enc = onehotencoder(categories='auto').fit(x)

#categories='auto'自動找資料的特徵種類

#result = enc.transform(x).toarray()

#toarray()把enc.transform(x)轉化成陣列

#result

#依然可以直接一步到位,但為了給大家展示模型屬性,所以還是寫成了三步

onehotencoder(categories=

'auto'

).fit_transform(x)

.toarray(

)#categories='auto'自動找資料的特徵種類

#toarray()把enc.transform(x)轉化成陣列

enc.get_feature_names(

)#返回每乙個經過啞變數後生成稀疏矩陣列的名字

#axis=1,表示跨行進行合併,也就是將兩表左右相連,如果是axis=0,就是將量表上下相連

newdata = pd.concat(

[data,pd.dataframe(result)

],axis=1)

#表連線

newdata.drop(

["***"

,"embarked"

],axis=

1,inplace=

true

)#刪掉["***","embarked"]

newdata.columns =

["age"

,"survived"

,"female"

,"male"

,"embarked_c"

,"embarked_q"

,"embarked_s"

]#重新命名列名

機器學習(2) 分類問題

參考部落格 根據一些 feature 進行分類,每個節點提乙個問題,通過判斷,將資料分為兩類,再繼續提問。這些問題是根據已有資料學習出來的,再投入新資料的時候,就可以根據這棵樹上的問題,將資料劃分到合適的葉子上。個人總結 不能保證正確 一組資料的特徵用向量表示,比如 x1,x2,x3,x4 有4個特...

機器學習3 分類演算法

機器學習一般的資料集會劃分為兩個部分 劃分比例 想一下之前做的特徵工程的步驟?我們把特徵工程的介面稱之為轉換器,其中轉換器呼叫有這麼幾種形式 在sklearn中,估計器 estimator 是乙個重要的角色,是一類實現了演算法的api 2 用於回歸的估計器 3 用於無監督學習的估計器 如果乙個樣本在...

李巨集毅機器學習 5 分類 Logistic回歸

step 2 goodness of function w b arg max l w,b arg min lnl w,b 定乙個新函式 widehat n 1 for class 1,0 for class 2 lnl w,b 正好是 p x 和 q x 兩個伯努利分布的cross entropy...