在我們人工進行資料採集時,難免會有遺漏或者誤採的情況,資料中經常可能會有空值(nan)和空格出現。在進行資料分析和處理之前,進行資料清洗是很有必要的流程,同時也是整個資料分析過程中最為重要的環節。
在敘述方法之前,先構造乙個含有空格和空值的dataframe型別的資料:
# 匯入相應模組
第一步,資料清洗——填充空值fillna():
def data_cleaning1(data):
cols = data.columns.tolist()
for col in cols:
if data[col].dtype == 'object':
data[col].fillna('缺失資料',inplace=true ) # inplace=true,表在原資料上進行更改
知識補充,函式fillna():
# 功能:使用指定的方法填充na / nan值
dataframe.fillna(value=none, method=none, axis=none, inplace=false, limit=none, downcast=none, **kwargs)
# 引數:value : 變數,字典,series or dataframe
# 用於填充缺失值(例如0),或者指定為每個索引(對於series)或列(對於dataframe)使用哪個字
# 典/serise/dataframe的值。(不在字典/series/dataframe中的值不會被填充)
# method : , 預設值 none ;
# pad/ffill:用前乙個非缺失值去填充該缺失值
# none:指定乙個值去替換缺失值(預設預設這種方式)
# axis :修改填充方向,
# inplace : boolean, 預設值 false,生成新資料。如果為ture,直接在原資料上進行更改
# limit : int, 預設值 none; 限制填充個數
# downcast : 預設是none
第二步,數值清洗2——填充空格(.replace(' ',''):針對字串的乙個常用操作replace(替換),將空格用無字元替換,如下
以上,整理的清洗資料的空值和空格的方法。第一步的方法思路,判斷資料當前列為字元還是整型,是字元採用『缺失資料』填充,若為其它則用0填充。第二步的方法思路,將當前列的資料中的空格採用無字元替換。
資料清洗 DataFrame中的空值處理
資料清洗是一項複雜且繁瑣的工作,同時也是整個資料分析過程中最為重要的環節。在python中空值被顯示為nan。首先,我們要構造乙個包含nan的dataframe物件。import numpy as np import pandas as pd from pandas import series,da...
python資料清洗之list去空格
定義乙個列表,如下 my list aaa,1000,we bbb,we,qt i,love,you 可見,1000 we qt i love you 前均包含空格,我們要把這些空格去除,也就是說,我們要把這些 髒資料 清洗 乾淨 使用for迴圈my list 列表,再通過replace 方法替換空...
python pandas消除空值和空格的混淆
在人工採集資料時,經常有可能把空值和空格混在一起,一般也注意不到在本來為空的單元格裡加入了空格。這就給做資料處理的人帶來了麻煩,因為空值和空格都是代表的無資料,而pandas中series的方法notnull 會把有空格的資料也納入進來,這樣就不能完整地得到我們想要的資料了,這裡給出乙個簡單的方法處...