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