標籤專用,能夠將分類轉換為分類數值
特徵專用,能夠將分類特徵轉換為分類數值
將原本的***,原本為male與female,現在將這兩個資料轉換為0和1 。
原本的embarked,不同的艙位,有scq三種,現在可以轉換為0、1、2 。
servived有yes、no、unknown,轉換為0、1、2 。
import pandas as pd
data = pd.read_csv(r"c:\users\jyuxuan\desktop\sklearn\預處理資料\narrativedata.csv"
, index_col=0)
# 防止多索引
# print(data.info())
# print()
age = data.loc[:,
"age"
].values.reshape(-1
,1)# sklearn當中特徵矩陣必須是二維
age[:20
]# print(age[:20]) #前20行用作展示,實際上把所有的缺失值使用中位數填充
from sklearn.impute import ******imputer
imp_mean = ******imputer(
)# 例項化,預設用均值填補
imp_median = ******imputer(strategy=
"median"
)# 用中位數填補
imp_0 = ******imputer(strategy=
"constant"
, fill_value=0)
# 用0填補
imp_mean = imp_mean.fit_transform(age)
imp_median = imp_median.fit_transform(age)
imp_0 = imp_0.fit_transform(age)
# 使用中位數填補age
data.loc[:,
"age"
]= imp_median
# print(data.info())
# print()
# 使用眾數填補embarked
embarked = data.loc[:,
"embarked"
].values.reshape(-1
,1)imp_mode = ******imputer(strategy=
"most_frequent"
)data.loc[:,
"embarked"
]= imp_mode.fit_transform(embarked)
# print(data.info())
# print()
# print(data[:20])
from sklearn.preprocessing import labelencoder
y = data.iloc[:,
-1]le = labelencoder(
)# 例項化
le = le.fit(y)
# 匯入資料
label = le.transform(y)
# transform介面調取結果
# print(le.classes_) #得到le有多少個屬性
# print(label) #label中所有的資料
# label=le.fit_transform(y) #一步到位
# print(le.inverse_transform(label)) #逆轉,通過label中的資料反推y原來的資料
data.iloc[:,
-1]= label # 讓標籤等於我們執行出來的結果
# print(data[:20])
# 上述**可以一步到位##
from sklearn.preprocessing import labelencoder
data.iloc[:,
-1]= labelencoder(
).fit_transform(data.iloc[:,
-1])
### 下一步將***和embarked進行轉換
from sklearn.preprocessing import ordinalencoder
data_ = data.copy(
)# print(data.head(20))
print
(ordinalencoder(
).fit(data.iloc[:,
1:-1
]).categories)
# categories預設為auto,可以根據標籤的個數進行分類
data_.iloc[:,
1:-1
]=ordinalencoder(
).fit_transform(data_.iloc[:,
1:-1
])print
(data_.head(20)
)
之前的相關步驟為填補缺失值,只有全部不為空的資料才可以進行轉換。 分類資料轉換為樹形結構
const excelstr 港口資料 貨主基本資訊 貨主 港口資料 貨主基本資訊 貨主全稱 港口資料 貨主基本資訊 貨主所屬國家 港口資料 貨主基本資訊 貨主位址 港口資料 貨主基本資訊 貨主 港口資料 貨主基本資訊 貨主銀行賬戶 港口資料 貨主基本資訊 貨主型別 港口資料 貨主費用資訊 剩餘金額...
sklearn中的分類方法
multinomial bayes classifier from sklearn.bayes import multinomialnb clf multinomialnb alpha 0.01 clf.fit train x,train y knn classifier from sklearn....
sklearn分類演算法例項(SVC KNN
2.2 劃分資料集 2.3 選取模型進行定價分類 總結資料集展示 可見,car資料集有6個屬性 buying maint doors persons lug boot safety 其取值範圍如下 其類別class的取值範圍如下 因為資料中很多為非數值型取值,因此需要將其數位化。資料中全為非空取值,...