训练集产生的onehot编码特征如何在测试集、预测集复现
生活随笔
收集整理的這篇文章主要介紹了
训练集产生的onehot编码特征如何在测试集、预测集复现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? ? ? ?數據處理中有時要用到onehot編碼,如果使用pandas自帶的get_dummies方法,訓練集產生的onehot編碼特征會跟測試集、預測集不一樣,正確的方式是使用sklearn自帶的OneHotEncoder。
代碼
import pandas as pd from sklearn.preprocessing import OneHotEncoder ohe = OneHotEncoder(handle_unknown='ignore') data_train=pd.DataFrame({'職業':['數據挖掘工程師','數據庫開發工程師','數據分析師','數據分析師'],'籍貫':['福州','廈門','泉州','龍巖']}) ohe.fit(data_train)#訓練規則 feature_names=ohe.get_feature_names(data_train.columns)#獲取編碼后的特征名 data_train_onehot=pd.DataFrame(ohe.transform(data_train).toarray(),columns=feature_names)#應用規則在訓練集上data_new=pd.DataFrame({'職業':['數據挖掘工程師','jave工程師'],'籍貫':['福州','莆田']}) data_new_onehot=pd.DataFrame(ohe.transform(data_new).toarray(),columns=feature_names)#應用規則在預測集上如果對你有幫助,請點下贊,予人玫瑰手有余香!
時時仰望天空,理想就會離現實越來越近!
總結
以上是生活随笔為你收集整理的训练集产生的onehot编码特征如何在测试集、预测集复现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: macbook蓝牙pan未连接_LOFR
- 下一篇: Ubuntu20.04系统WineHQ7