pandas-數據清洗


1. 缺失值處理

1.1 判斷缺失值

一、info()
二、isnull(),可與any()和all()結合使用
三、notnull()web

導入數據:
在這裏插入圖片描述
使用info()能夠查看每一列的相關信息,能夠知道每一列有多少個非空數值。
在這裏插入圖片描述
使用isnull()判斷空值,按列判斷。
在這裏插入圖片描述
使用notnull()判斷非空,按列判斷。
在這裏插入圖片描述svg

1.2 丟棄缺失值

對於缺失值,能夠丟棄處理(dropna)。
參數:3d

  • how:指定丟棄缺失值的行爲,默認是any(即有缺失值就刪除),all。
  • axis:指定丟棄行仍是列,默認是axis = 0,丟棄行。
  • thresh:設置當非空值達到多少個時,保留數據。
  • inplace:是否就地修改。

導入數據:
在這裏插入圖片描述
使用dropna()按行刪除缺失值。本來有1396行數據,刪除缺失值後,剩餘1098行。
在這裏插入圖片描述
設置how
在這裏插入圖片描述
設置axis = 1,只要該列有缺失值就刪除該列。
在這裏插入圖片描述
設置thresh,只要大於等於設置的值,該行纔會被保留。
在這裏插入圖片描述xml

1.3 填充缺失值

對於缺失值,能夠填充處理(fillna)。
參數:對象

  • value:指定填充的值,能夠是字典,設置不一樣的列(key)填充不一樣的值(value)。
  • method:向上填充,採用前一個值填充(pad/ffill);向下填充,採用後一個值填充(backfill/bfill)。
  • limit:指定最大連續NaN填充的次數,若是沒有指定,則表示填充全部的NaN。
  • iinplace:是否就地修改。

導入數據:
在這裏插入圖片描述
使用固定值填充
在這裏插入圖片描述
根據字典填充
在這裏插入圖片描述
向上填充ffill
在這裏插入圖片描述
向下填充bfill
在這裏插入圖片描述
limit最多連續填充NaN次數
在這裏插入圖片描述blog

1.4 describe()

describe()針對數值列和非數值列,顯示的信息不同。圖片

導入數據:
在這裏插入圖片描述
在這裏插入圖片描述it

2. 重複值處理

2.1 發現重複值

duplicated()發現重複值,該方法返回一個series類型對象,值爲布爾類型。
參數:
subset:指定依據哪些列來判斷是否重複,默認是全部列,即一行的全部值徹底相同視爲重複。
keep:指定標記重複記錄的規則,默認是first。ast

  • first:前面的記錄標記爲True
  • last:後面的記錄標記爲True
  • False:全部記錄標記爲True
    例如1,2,3行記錄重複,則
    first:True True False
    last:False True True
    first:True True True

導入數據:
在這裏插入圖片描述
查看重複值
在這裏插入圖片描述
subset判斷只要某些列相同,則認爲是重複。
也可寫subset = (字段名1,字段名2…)
在這裏插入圖片描述class

2.2 刪除重複值

drop_duplicates()刪除重複值。
參數:
subset:指定依據哪些列判斷是否重複。
也可寫subset = (字段名1,字段名2…)
在這裏插入圖片描述