空值和缺失值的處理dropna方法填充空值缺失值_第1頁
空值和缺失值的處理dropna方法填充空值缺失值_第2頁
空值和缺失值的處理dropna方法填充空值缺失值_第3頁
空值和缺失值的處理dropna方法填充空值缺失值_第4頁
空值和缺失值的處理dropna方法填充空值缺失值_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

空值和缺失值的處理

dropna()方法、填充空值/缺失值教師:亢華愛北京信息職業(yè)技術(shù)學(xué)院商務(wù)數(shù)據(jù)分析與應(yīng)用專業(yè)教學(xué)資源庫目錄Contents填充空值/缺失值dropna()方法1PARTdropna()方法dropna()方法作用是刪除含有空值或缺失值的行或列dropna(axis=0,how=1any*,thresh=None,subset=None,inplace=False)dropna()方法語法格式取值可以為:any:默認(rèn)值。如果存在NaN值,則刪除該行或該列。all:如果所有值都是NaN值,則刪除該行或該列。how:確定過濾的標(biāo)準(zhǔn)。取值可以為:0或index:刪除包含缺失值的行,默認(rèn)為0。1或columns:刪除包含缺失值的列。axis:確定過濾行或列。若傳入了2,則是要求該行或該列至少有兩個(gè)非NaN值時(shí)將其保留thresh:表示有效數(shù)據(jù)量的最小要求。201712435dropna()方法表示在特定的子集中尋找NaN值。subsetinplace:表示是否在原數(shù)據(jù)上操作。如果設(shè)為True,則表示直接修改原數(shù)據(jù);如果設(shè)為False,則表示修改原數(shù)據(jù)的副本,返回新的數(shù)據(jù)。書籍信息表格類別書名作者在索引為0的一行中書名為NaN,表明該位置的數(shù)據(jù)是缺失值索引為1的一行中作者為None,表明該位置的數(shù)據(jù)是空值刪除空值/缺失值前后的表格dropna()方法接下來,通過一個(gè)示例來演示如何使用dropna()方法刪除空值和缺失值,具體代碼如下。In[3]:importpandasaspdimportnumpyasnpdf_obj=pd.DataFrame({"類別":['小說','散文隨筆','青春文學(xué)','傳記'],"書名":[np.nan,,'《皮囊》','《旅程結(jié)束時(shí)》','《老舍自傳》'],"作者":["老舍",None,"張其鑫","老舍"]})df_objOut[3]:類別 書名 作者0 小說NaN 老舍1散文隨筆 《皮囊》None2青春文學(xué)《旅程結(jié)束時(shí)》 張其鑫3傳記 《老舍自傳》 老舍Out[4]: 類別 書名 作者2青春文學(xué)《旅程結(jié)束時(shí)》張其鑫3傳記《老舍自傳》老舍dropna()方法首先創(chuàng)建一個(gè)含有控制和缺失值的DateFrame對(duì)再讓該對(duì)象調(diào)用dropna()方法將數(shù)據(jù)中的空值或缺失值進(jìn)行過濾刪除,只保留完整的數(shù)據(jù)從輸出結(jié)果看出,所有包含空值或缺失值的行已經(jīng)被刪除了代碼中dropna()方法2PART填充空值/缺失值填充空值/缺失值填充缺失值和空值的方式人工填寫特殊值填寫熱卡填充Pandas中的fillna()方法可以實(shí)現(xiàn)填充空值或缺失值,其語法格式如下fillna(value=None,method=None,axis=None,inplace=False,limit=None,downcast=None,**kwargs)填充空值/缺失值1value用于填充的數(shù)值2methodpad/ffillbackfill/bfill表示填充方式,默認(rèn)值為None將最后一個(gè)有效的數(shù)據(jù)向后傳播,也就是說用缺失值前面的一個(gè)值代替缺失值將最后一個(gè)有效的數(shù)據(jù)向前傳播,也就是說用缺失值后面的一個(gè)值代替缺失值3limit可以連續(xù)填充的最大數(shù)量,默認(rèn)None注意:method參數(shù)不能與value參數(shù)同時(shí)使用填充空值/缺失值當(dāng)使用fillna()方法進(jìn)行填充時(shí),既可以是標(biāo)量、字典,也可以是Series或DataFrame對(duì)象圖4-2填充缺失值示例假設(shè)現(xiàn)在有一張表格,它里面存在一些缺失值,如果使用一個(gè)常量66.0來替換缺失值,那么填充前后的效果如圖4-2所示填充常數(shù)替換缺失值的示例代碼如下In[5]:importpandasaspdimportnumpyasnpfromnumpyimportNaNdf_obj=pd.DataFrmme({'A':[1,2,3,NaN],'B':[NaN,4,NaN,6],'C':['a',7,8,9],'D':[NaN,2,3,NaN]})df_objOut[5]:ABCD0 1.0 NaN a NaN1 2.0 4.0 7 2.02 3.0 NaN 83.03 NaN 6.0 9 NaN填充空值/缺失值填充常數(shù)替換缺失值的示例代碼如下In[6]:df_obj.fillna('66.0') #使用66.0替換缺失值Out[6]:ABCD0 1.0 66.0 a 66.01 2.0 4.0 7 2.02 3.0 66.0 83.0366.0 6.0 9 66.0填充空值/缺失值通過比較兩次的結(jié)果可知,當(dāng)使用任意一個(gè)有效值替換空值或缺失值時(shí),對(duì)象中所有的空值或缺失值都將會(huì)被替換填充空值/缺失值如果希望填充不一樣的內(nèi)容,例如,A列缺失的數(shù)據(jù)使用數(shù)字“4.0”進(jìn)行填充,B列缺失的數(shù)據(jù)使用數(shù)字“5.0”來填充,那么填充前后的效果如圖4-3所示圖4-3指定填充列調(diào)用fillna()方法時(shí)傳入一個(gè)字典給value參數(shù),其中字典的鍵為列標(biāo)簽,字典的值為待替換的值,實(shí)現(xiàn)對(duì)指定列的缺失值進(jìn)行替換,具體示例代碼如下In[7]:importpandasaspdimportnumpyasnpfromnumpyimportNaNdf_obj=pd.Dat3Frame{'A':[1,2,3,NaN],'B':[NaN,4,NaN,6],'C':['a',7,8,9],'D':[NaN,2,3,NaN]})df_objOut[7]:ABCD0 1.0 NaN a NaN1 2.0 4.0 7 2.02 3.0 NaN 83.03 NaN 6.0 9 NaNIn[8]:df_obj.fillna({'A':4.0,'B':5.0}) #指定列填充數(shù)據(jù)Out[8]:ABCD0 1.0 5.0 a NaN1 2.0 4.0 7 2.02 3.0 5.0 83.03 4.0 6.0 9 NaN填充空值/缺失值調(diào)用fillna()方法時(shí)傳入一個(gè)字典給value參數(shù),其中字典的鍵為列標(biāo)簽,字典的值為待替換的值,實(shí)現(xiàn)對(duì)指定列的缺失值進(jìn)行替換,具體示例代碼如下In[8]:df_obj.fillna({'A':4.0,'B':5.0}) #指定列填充數(shù)據(jù)Out[8]:ABCD0 1.0 5.0 a NaN1 2.0 4.0 7 2.02 3.0 5.0 83.03 4.0 6.0 9 NaN填充空值/缺失值填充空值/缺失值如果希望填充相鄰的數(shù)據(jù)來替換缺失值,例如,A?D列中按從前往后的順序填充缺失的數(shù)據(jù),也就是說在當(dāng)前列中使用位于缺失值前面的數(shù)據(jù)進(jìn)行替換,填充前后的效果如圖4-4所示。圖4-4前向填充示例調(diào)用fillna()方法時(shí)將“ffill”傳入給method參數(shù),采用前向填充的方式填充缺失的數(shù)據(jù),具體示例代碼如下。In[9]:importpandasaspdimportnumpyasnpfromnumpyimportNaNdf=pd.DataFrame{'A':[1,2,3,None],'B':[NaN,4,None,6],'C':['a',7,8,9],'D':[None,2,3,NaN]})dfOut[9]:ABCD0 1.0 NaN a NaN1 2.0 4.0 7 2.02 3.0 NaN 83.03 NaN 6.0 9 NaN填充空值/缺失值調(diào)用fillna()方法時(shí)將“ffill”傳入給method參數(shù),采用前向填充的方式填充缺失的數(shù)據(jù),具體示例代碼如下。In[10]:df.fillna(method='ffill') #使用前向填充的方式替換空值或缺失值Out[10]:A

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論