日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python 如何通過KNN來填充缺失值

瀏覽:33日期:2022-06-18 18:02:54
看代碼吧~

# 加載庫import numpy as npfrom fancyimpute import KNNfrom sklearn.preprocessing import StandardScalerfrom sklearn.datasets import make_blobs# 創建模擬特征矩陣features, _ = make_blobs(n_samples = 1000, n_features = 2, random_state = 1)# 標準化特征scaler = StandardScaler()standardized_features = scaler.fit_transform(features)standardized_features# 制造缺失值true_value = standardized_features[0,0]standardized_features[0,0] = np.nanstandardized_features# 預測features_knn_imputed = KNN(k=5, verbose=0).fit_transform(standardized_features)# features_knn_imputed = KNN(k=5, verbose=0).complete(standardized_features)features_knn_imputed# #對比真實值和預測值print('真實值:', true_value)print('預測值:', features_knn_imputed[0,0])# 加載庫import numpy as npfrom fancyimpute import KNNfrom sklearn.preprocessing import StandardScalerfrom sklearn.datasets import make_blobs​# 創建模擬特征矩陣features, _ = make_blobs(n_samples = 1000, n_features = 2, random_state = 1)​# 標準化特征scaler = StandardScaler()standardized_features = scaler.fit_transform(features)standardized_features# 制造缺失值true_value = standardized_features[0,0]standardized_features[0,0] = np.nanstandardized_features# 預測features_knn_imputed = KNN(k=5, verbose=0).fit_transform(standardized_features)# features_knn_imputed = KNN(k=5, verbose=0).complete(standardized_features)features_knn_imputed# #對比真實值和預測值print('真實值:', true_value)print('預測值:', features_knn_imputed[0,0])真實值: 0.8730186113995938預測值: 1.0955332713113226

補充:scikit-learn中一種便捷可靠的缺失值填充方法:KNNImputer

在數據挖掘工作中,處理樣本中的缺失值是必不可少的一步。其中對于缺失值插補方法的選擇至關重要,因為它會對最后模型擬合的效果產生重要影響。

在2019年底,scikit-learn發布了0.22版本,此次版本除了修復之前的一些bug外,還更新了很多新功能,對于數據挖掘人員來說更加好用了。其中我發現了一個新增的非常好用的缺失值插補方法:KNNImputer。這個基于KNN算法的新方法使得我們現在可以更便捷地處理缺失值,并且與直接用均值、中位數相比更為可靠。利用“近朱者赤”的KNN算法原理,這種插補方法借助其他特征的分布來對目標特征進行缺失值填充。

下面,就讓我們用實際例子來看看KNNImputer是如何使用的吧‎

使用KNNImputer需要從scikit-learn中導入:

from sklearn.impute import KNNImputer

先來一個小例子開開胃,data中第二個樣本存在缺失值。

data = [[2, 4, 8], [3, np.nan, 7], [5, 8, 3], [4, 3, 8]]

KNNImputer中的超參數與KNN算法一樣,n_neighbors為選擇“鄰居”樣本的個數,先試試n_neighbors=1。

imputer = KNNImputer(n_neighbors=1)imputer.fit_transform(data)

python 如何通過KNN來填充缺失值

可以看到,因為第二個樣本的第一列特征3和第三列特征7,與第一行樣本的第一列特征2和第三列特征8的歐氏距離最近,所以缺失值按照第一個樣本來填充,填充值為4。那么n_neighbors=2呢?

imputer = KNNImputer(n_neighbors=2)imputer.fit_transform(data)

python 如何通過KNN來填充缺失值

此時根據歐氏距離算出最近相鄰的是第一行樣本與第四行樣本,此時的填充值就是這兩個樣本第二列特征4和3的均值:3.5。

接下來讓我們看一個實際案例,該數據集來自Kaggle皮馬人糖尿病預測的分類賽題,其中有不少缺失值,我們試試用KNNImputer進行插補。

import numpy as npimport pandas as pdimport pandas_profiling as ppimport matplotlib.pyplot as pltimport seaborn as snssns.set(context='notebook', style='darkgrid')import warningswarnings.filterwarnings(’ignore’)%matplotlib inline from sklearn.impute import KNNImputer

#Loading the datasetdiabetes_data = pd.read_csv(’pima-indians-diabetes.csv’)diabetes_data.columns = [’Pregnancies’, ’Glucose’, ’BloodPressure’, ’SkinThickness’,’Insulin’, ’BMI’, ’DiabetesPedigreeFunction’, ’Age’, ’Outcome’]diabetes_data.head()

python 如何通過KNN來填充缺失值

在這個數據集中,0值代表的就是缺失值,所以我們需要先將0轉化為nan值然后進行缺失值處理。

diabetes_data_copy = diabetes_data.copy(deep=True)diabetes_data_copy[[’Glucose’,’BloodPressure’,’SkinThickness’,’Insulin’,’BMI’]] = diabetes_data_copy[[’Glucose’,’BloodPressure’,’SkinThickness’,’Insulin’,’BMI’]].replace(0, np.NaN) print(diabetes_data_copy.isnull().sum())

python 如何通過KNN來填充缺失值

在本文中,我們嘗試用DiabetesPedigreeFunction與Age,對BloodPressure中的35個缺失值進行KNNImputer插補。

先來看一下缺失值都在哪幾個樣本:

null_index = diabetes_data_copy.loc[diabetes_data_copy[’BloodPressure’].isnull(), :].indexnull_index

python 如何通過KNN來填充缺失值

imputer = KNNImputer(n_neighbors=10)diabetes_data_copy[[’BloodPressure’, ’DiabetesPedigreeFunction’, ’Age’]] = imputer.fit_transform(diabetes_data_copy[[’BloodPressure’, ’DiabetesPedigreeFunction’, ’Age’]])print(diabetes_data_copy.isnull().sum())

python 如何通過KNN來填充缺失值

可以看到現在BloodPressure中的35個缺失值消失了。我們看看具體填充后的數據(只截圖了部分):

diabetes_data_copy.iloc[null_index]

python 如何通過KNN來填充缺失值

到此,BloodPressure中的缺失值已經根據DiabetesPedigreeFunction與Age運用KNNImputer填充完成了。注意的是,對于非數值型特征需要先轉換為數值型特征再進行KNNImputer填充操作,因為目前KNNImputer方法只支持數值型特征(ʘ̆ωʘ̥̆‖)՞。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品伊人久久久| 日本欧美大码aⅴ在线播放| 亚洲欧美网站在线观看| 国模 一区 二区 三区| 香蕉成人av| 蜜桃av在线播放| 精品精品久久| 精品美女在线视频| 精品视频网站| 精品国产乱码久久久久久樱花| 国产麻豆一区| 久久激情综合网| 日本欧美大码aⅴ在线播放| 欧美日一区二区三区在线观看国产免| 婷婷综合电影| 婷婷成人av| 欧美精品三级在线| 久久av免费| 黄毛片在线观看| 久久五月天小说| 中文在线一区| 亚洲精品影视| 国产精选一区| 亚洲成人va| 日本午夜精品| 91亚洲精品在看在线观看高清| 亚洲手机视频| 亚洲成人精品| 在线一区欧美| 综合欧美精品| 日本成人手机在线| 国产精品手机在线播放| 国产成人精品一区二区三区视频 | 日韩 欧美一区二区三区| 日韩精品1区2区3区| 欧美激情 亚洲a∨综合| 久久电影tv| 欧美成人日韩| 蜜桃视频在线观看一区| 国产亚洲一卡2卡3卡4卡新区| 国产欧美日韩一区二区三区四区 | 狂野欧美性猛交xxxx| 中文字幕在线看片| 999视频精品| 婷婷中文字幕一区| 日韩中文字幕视频网| 精品精品国产三级a∨在线| 亚洲成人二区| 亚洲3区在线| 久久97久久97精品免视看秋霞| 黄色在线观看www| 中日韩男男gay无套| 欧美日韩一区二区国产| 在线天堂资源www在线污| 久久国产毛片| 日本不卡一区二区三区| 91青青国产在线观看精品| 欧美影院三区| 日本aⅴ免费视频一区二区三区| 国产精品久久久久久妇女| 国产精品99在线观看| 国产精品色网| 国产精品色婷婷在线观看| 久久久成人网| 欧美在线精品一区| 99久久婷婷这里只有精品| 日韩精品中文字幕吗一区二区| 91视频一区| 视频一区欧美精品| 国内一区二区三区| 99国产精品视频免费观看一公开 | 久久不见久久见国语| 午夜久久黄色| 另类综合日韩欧美亚洲| 伊人精品在线| 韩国女主播一区二区三区| 天堂av在线一区| 国际精品欧美精品| 亚洲专区视频| 久久久久久美女精品| 91成人在线| 亚洲一区二区三区四区五区午夜| 中文一区一区三区高中清不卡免费| 亚洲精品视频一二三区| 三上悠亚国产精品一区二区三区| 久久精品 人人爱| 99免费精品| 美女久久久久久| 日韩视频一二区| 伊人久久大香线蕉av不卡| 欧美国产另类| 日韩精品高清不卡| 蜜桃久久av| 久久国产小视频| 麻豆国产91在线播放| 日韩国产欧美视频| 国产精品av一区二区| 高清日韩中文字幕| 国产欧美三级| 日韩影片在线观看| 亚洲午夜久久久久久尤物| 狠狠干成人综合网| 国产一区二区三区黄网站| 欧美一区二区三区免费看| 首页国产欧美久久| 免费国产自久久久久三四区久久| 成人国产精选| 国产精品一区二区美女视频免费看| 久久www成人_看片免费不卡| 欧美一级精品| 99国产精品免费视频观看| 国语精品一区| 久久精品毛片| 欧美国产另类| 国产精品国码视频| 日韩欧美高清一区二区三区| 欧美精选一区二区三区| 亚洲一级网站| 99精品一区| 成人看片网站| 久久久成人网| 国产一区亚洲| 今天的高清视频免费播放成人| av高清一区| 精品三级久久| 国产成人精品亚洲日本在线观看| 国产在线观看91一区二区三区| 国产一区二区三区网| 风间由美中文字幕在线看视频国产欧美| 欧美亚洲色图校园春色| 久久黄色影视| 国产精品日韩精品中文字幕| 国产精品xxxav免费视频| 久久99精品久久久野外观看| 久久久国产精品入口麻豆| 久久精品国产精品亚洲毛片| 成人国产精品一区二区免费麻豆| 日韩欧美精品| 狠狠干综合网| 午夜久久av| 国产精品中文字幕制服诱惑| 精品午夜视频| 欧美精品高清| 午夜日韩在线| 亚洲字幕久久| 国产一级成人av| 国产欧美自拍| 精品美女久久| 亚洲va在线| 亚洲欧美日本国产专区一区| 无码日韩精品一区二区免费| 国产欧美一区二区三区国产幕精品| 日本免费新一区视频| 日韩在线成人| 91麻豆精品激情在线观看最新| 7m精品国产导航在线| 免费在线观看一区| 欧美国产另类| 色偷偷色偷偷色偷偷在线视频| 91精品蜜臀一区二区三区在线| 精品理论电影在线| 美女免费视频一区| 美女少妇全过程你懂的久久| 亚洲三级在线| 欧美日韩调教| 18国产精品| 久久久久久自在自线| 黄色在线网站噜噜噜| 日本免费久久| 欧美~级网站不卡| 日韩精品导航| 国产美女久久| 高清不卡一区| 鲁大师影院一区二区三区| 喷白浆一区二区| 国产精品99久久久久久董美香| 国产精品黄色片| 久久一区二区三区喷水| 婷婷亚洲成人| 狠狠久久伊人| 视频一区视频二区中文| 日本午夜精品视频在线观看| 狠狠久久伊人中文字幕| 成人免费电影网址| 911亚洲精品| 免费观看久久av| 日韩国产欧美一区二区三区| 亚洲伦乱视频| 免费人成在线不卡| 国产一区不卡| 亚洲永久精品唐人导航网址| 最近国产精品视频| 色综合狠狠操| 亚洲一区二区三区四区五区午夜 | 久久精品在线| 国产日韩欧美| 久久91导航| 欧美激情日韩| 日韩精品午夜视频| 97视频热人人精品免费|