Python 資料預處理與清洗(學習筆記)

2021-10-03 09:22:05 字數 2553 閱讀 5800

import numpy as np

import pandas as pd

from matplotlib import pyplot as plt

data = pd.read_csv(

'file.csv'

,encoding =

'gbk'

)data.info(

)#檢視資料型別

1、堆疊資料
df1 = data.iloc[

:1500,:

]##取出detail1前1500行資料

df2 = data.iloc[

1500:,

:]##取出detail1的1500後的資料

pd.concat(

[df1,df2]

,axis=

1,join=

'inner'

)#axis表示堆疊的軸向,axis為0,表示縱向堆疊; 為1表示橫向

#join按交集還是並集進行合併,』inner』是兩表的交集,outer是兩表的並集

2、主鍵合併資料

通過乙個或者多個鍵將兩個資料集的行連線起來

pd.merge(data_1,data_2,on =

'key'

,how =

'inner'

)# 此時data_1與data_2的共同列名為key.將其傳給on。作為合併主鍵。

pd.merge(data_1,data_2,how =

'inner'

,left_on =

'key1'

,right_on =

'key2'

)# 左右的合併主鍵分別是key1和key2。

3、join方法

使用join方法時,兩個主鍵的名字必須相同

data_1.join(data_2,on =

'key'

)

4、重疊合併
#用乙個dataframe來更新彌補另乙個dataframe中相同位置處的缺失值。

df2.combine_first(df3)

1、刪除處理
data.isnull().

sum(

)#檢視是否有缺失值

data.dropna(

)#直接刪除含有缺失值的行

data.dropna(axis =1)

#直接刪除含有缺失值的列

data.dropna(how =

'all'

)#只刪除全是缺失值的行

data.dropna(thresh =3)

#保留至少有3個非空值的行

data.dropna(subset =

[u'列名 '])

#判斷特定的列,若該列含有缺失值則刪除缺失值所在的行

2、缺失值插補方法處理
data.fillna(data.mean())

#均值插補

data.fillna(data.

max())

#最大值插補

data.fillna(0)

#固定值插補--用固定的數值(如:0)填充

data.fillna(method=

'ffill')#用缺失值的前乙個值填充

data.fillna(method=

'pad') #用缺失值的前乙個值填充

from pandas import dataframe,series

df = dataframe(data)

df.duplicated(

)## 資料重複項判斷;

df.drop_duplicates(

)#去除重複項

可將異常值轉化為空值,在使用缺失值處理辦法

data[

'列名'

][data[

'列名']==

0]=none

data.isnull().

sum(

)data_1 =data.dropna(

)#將該列為0的資料行刪除

一般特徵之間有不同的量綱,如果不做處理,會造成資料間的差異很大,則涉及空間距離計算或者相似度計算時,需要對不同特徵資料標準化

##自定義標準差標準化函式(也可定義其他函式如均值標準化函式)

defstandardscaler

(data)

: data=

(data-data.mean())

/data.std(

)return data

##對某列做標準化處理

data4=standardscaler(data[

'key1'])

data5=standardscaler(data[

'key2'])

data6=pd.concat(

[data4,data5]

,axis =

1)

python資料清洗與預處理實戰

髒資料可以理解為帶有不整潔程度的原始資料。原始資料的整潔程度由資料採集質量所決定。髒資料的表現形式五花八門,如若資料採集質量不過關,拿到的原始資料內容只有更差沒有最差。髒資料的表現形式包括 資料採集完後拿到的原始資料到建模前的資料 there is a long way to go.從資料分析的角度...

大資料預處理之資料清洗

現實世界的資料常常是不完全的 有雜訊的 不一致的。資料清洗過程包括遺漏資料處理,雜訊資料處理,以及不一致資料處理。本節介紹資料清洗的主要處理方法。假設在分析乙個商場銷售資料時,發現有多個記錄中的屬性值為空,如顧客的收入屬性,則對於為空的屬性值,可以採用以下方法進行遺漏資料處理。1 忽略該條記錄 若一...

資料探勘 資料預處理之資料清洗

資料清洗 資料清洗作為資料預處理中的乙個步驟,主要用於處理由於資料倉儲中資料不完整 資料雜訊以及資料不一致導致的問題。有人可能質疑,為什麼要對資料進行清洗?忽略那些出問題的資料不行嗎?當然,視而不見確是一種應對策略,但作為資料探勘中的一環,沒有高質量的資料又談何挖掘的可信性。為此,對於資料資料探勘來...