<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
class sklearn.preprocessing.Imputer(missing_values=’NaN’, strategy=’mean’, axis=0, verbose=0, copy=True)
說實話,我還是沒太弄明白aixs的具體含義,總感覺在不同的函數中有不同的含義。。還是使用前查詢一下官方檔案吧,畢竟大多數時候處理的都是2維陣列,檔案中的引數很容易理解。
數值屬性的列較少,可以將數值屬性的列取出來 單獨取出來
import pandas as pd import numpy as np df=pd.DataFrame([["XXL", 8, "black", "class 1", 22], ["L", np.nan, "gray", "class 2", 20], ["XL", 10, "blue", "class 2", 19], ["M", np.nan, "orange", "class 1", 17], ["M", 11, "green", "class 3", np.nan], ["M", 7, "red", "class 1", 22]]) df.columns=["size", "price", "color", "class", "boh"] print(df) # out: ''' size price color class boh 0 XXL 8.0 black class 1 22.0 1 L NaN gray class 2 20.0 2 XL 10.0 blue class 2 19.0 3 M NaN orange class 1 17.0 4 M 11.0 green class 3 NaN 5 M 7.0 red class 1 22.0 ''' from sklearn.preprocessing import Imputer # 1. 建立Imputer器 imp =Imputer(missing_values="NaN", strategy="mean",axis=0 ) # 先只將處理price列的資料, 注意使用的是 df[['price']] 這樣返回的是一個DataFrame型別的資料!!!! # 2. 使用fit_transform()函數即可完成缺失值填充了 df["price"]=imp.fit_transform(df[["price"]]) df # out: ''' size price color class boh 0 XXL 8.0 black class 1 22.0 1 L 9.0 gray class 2 20.0 2 XL 10.0 blue class 2 19.0 3 M 9.0 orange class 1 17.0 4 M 11.0 green class 3 NaN 5 M 7.0 red class 1 22.0 ''' # 直接處理price和boh兩列 df[['price', 'boh']] = imp.fit_transform(df[['price', 'boh']]) df # out: ''' size price color class boh 0 XXL 8.0 black class 1 22.0 1 L 9.0 gray class 2 20.0 2 XL 10.0 blue class 2 19.0 3 M 9.0 orange class 1 17.0 4 M 11.0 green class 3 20.0 5 M 7.0 red class 1 22.0 '''
數值屬性的列較多,相反文字或分類屬性(text and category attribute)較少,可以先刪除文字屬性,處理完以後再合併
from sklearn.preprocessing import Imputer # 1.建立Iimputer imputer = Imputer(strategy="median") # 只有一個文字屬性,故先去掉 housing_num = housing.drop("ocean_proximity", axis=1) # 2. 使用fit_transform函數 X = imputer.fit_transform(housing_num) # 返回的是一個numpyarray,要轉化為DataFrame housing_tr = pd.DataFrame(X, columns=housing_num.columns) # 將文字屬性值新增 housing_tr['ocean_proximity'] = housing["ocean_proximity"] housing_tr[:2] # out: ''' longitude latitude housing_median_age total_rooms total_bedrooms population households median_income 0 -121.89 37.29 38.0 1568.0 351.0 710.0 339.0 2.7042 1 -121.93 37.05 14.0 679.0 108.0 306.0 113.0 6.4214 '''
在sklearn的0.22以上版本的sklearn去除了Imputer類,我們可以使用SimpleImputer類代替。或者降級回版本sklearn 0.19
from sklearn.impute import SimpleImputer #有如下的一些引數 sklearn.impute.SimpleImputer( missing_values=nan, strategy='mean', fill_value=None, verbose=0, copy=True, add_indicator=False )[source]
imputer = SimpleImputer(missing_values=NA, strategy = "mean")
用上面那個程式碼就可以實現imputer的功能。其他的引數詳解如下,具體的話大家去查閱sklearn庫的說明。
隨著版本的更新,Imputer的輸入方式也發生了變化,一開始的輸入方式為
from sklearn.preprocessing import Imputer imputer = Imputer(strategy='median')
現在需要對上面輸入進行更新,輸入變為
from sklearn.impute import SimpleImputer imputer = SimpleImputer(strategy="median")
簡單使用:
from sklearn.impute import SimpleImputer import numpy as np def im(): """ 缺失值處理 :return: None """ im1 = SimpleImputer(missing_values=np.nan, strategy='mean') data = im1.fit_transform([[1, 2], [np.nan, 3], [7, 6]]) print(data) return None if __name__ == "__main__": im()
到此這篇關於slearn缺失值處理器之Imputer的文章就介紹到這了,更多相關slearn缺失值處理器Imputer內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45