Python資料分析 資料預處理

2021-08-18 04:59:03 字數 2265 閱讀 6742

資料預處理主要包括:資料清洗、資料整合、資料變換和資料規約。

資料清洗主要是刪除原始資料中的無關資料、重複資料,平滑噪音資料,篩選掉和挖掘主題無關的資料,處理缺失值和異常值。

處理缺失值資料方法有三類:刪除記錄、資料插補和不處理。其中資料插補方法如下:

1)均值/中數值/眾數插補:根據屬性型別,用均值、中數值或眾數進行插補。

2)使用固定值:將缺失的屬性值用乙個常量替換。

3)最近鄰插補:在記錄中找到缺失樣本最近鄰的樣本的該屬性進行插補。

4)回歸方法:根據已有資料和與其有關的其他變數(因變數)的資料建立擬合模型來**缺失的屬性值。

5)插值法:利用已知點建立合適的插值函式f(x),未知值由對應點x求出函式值f(x)近似代替。(拉格朗日插值法、牛頓插值法、hermite插值、分段插值、樣條插值法)

異常值處理要視情況而定,因為有些異常值可能蘊含著有用的資訊,處理方式如下:

1)刪除含有異常值的記錄

2)視為缺失值

3)平均值修正:用前後兩個觀察值的平均值修正該異常值。

4)不處理。

資料探勘需要的資料往往分布在不同的資料來源中,資料整合就是將多個資料來源合併存放在乙個一致的資料儲存(如資料倉儲)中的過程。

從不同的資料來源識別出現實中的實體,統一不同源資料的矛盾之處:同名異義,異名同義,單位不統一

資料整合往往導致資料冗餘,如:同一屬性多次出現,同一屬性名不一致導致重複。

資料變換主要是對資料進行規範化處理,將資料轉換為「適當的」形式,以適用於挖掘任務及演算法的需要。

對原始資料進行某些數學函式變換,常用的如平方、開方、取絕對值、差分運算等。

也叫歸一化處理,往往不同的指標具有不同的量綱,數值間的差別可能很大,不進行處理可能會影響到資料的分析結果。為了消除影響,要進行標準化處理,將資料按照比例進行縮放,使之落入乙個特定區域,便於進行綜合分析。

1)最小--最大規範化:也叫離差標準化,是對原始資料的線性變換,將數值值對映到[0, 1]之間。

2)零--均值規範化:也叫標準差規範化,經過處理的資料均值為0,標準差為1。

3)小數定標規範化:通過移動屬性值的小數字數,將屬性對映到[-1, 1]之間,移動小數的位數取決於屬性值的最大值。

一些資料探勘演算法,特別是分類演算法,要求資料是分類屬性形式,這樣常常需要將連續屬性變換為分類屬性。

1)離散化的過程

連續屬性的離散化是在資料的取值範圍內設定若干個離散的劃分點,將取值範圍劃分為一些離散化的區間,最後用不同的符號或數值代表每個落在區間內的資料值。

2)離散化方法

為了提取更有用的資訊,挖掘更深層次的模型,提高挖掘結果的精度,我們需要利用已有的屬性集構造出新的屬性,並加入到現有屬性集合中。

小波分析的理論和發放在訊號處理、語音處理、影象處理、模式識別、量子物理等領域得到廣泛應用。能夠刻畫某個問題的特徵量往往隱含在乙個訊號中的某個或某些分量中,小波變換可以把非平穩訊號分解為表達不同層次、不同頻帶資訊的資料序列,即小波係數。

1)小波變化的特徵提取方法:

2)小波基函式

小波基函式是一種具有區域性支集的函式,並且平均值為0

3)小波變換

對小波基函式進行伸縮和平移變換

在大資料集上進行複雜的資料分析和挖掘需要很長的時間,資料規約產生更小但保持原資料完整性的新資料集。

通過屬性合併來創造新屬性維度,或者直接通過刪除不相關的屬性(維度)來減少資料維度,從而提高資料探勘效率。屬性規約的目標是找出最小屬性子集並確保新資料子集的概率分布盡可能地接近原來資料集的概率分布。屬性規約常用方法:

1)合併屬性:將一些舊屬性合併為新屬性

2)逐步向前選擇:從乙個空屬性開始,逐步從原來屬性集中選擇乙個當前最優屬性新增到當前屬性子集。直到無法選擇到最優屬性或滿足一定閾值的約束為止。

3)逐步向後刪除:從全屬性集開始,每次從當前屬性集中選擇乙個當前最差屬性,並將其從當前屬性集中消除。

4)決策樹歸納:利用決策樹歸納方法對初始資料進行歸納學習,獲得乙個初始決策樹,所有沒有出現在這個決策樹的屬性均可認為是無關屬性,將其刪除。

數值規約是指通過選擇替代的、較小的資料來減少資料量,包括有引數方法和無引數方法兩類。

interpolate是scipy的乙個子庫,包含大量的插值函式,如拉格朗日插值、樣條插值、高維插值等。

去除資料中的重複元素,np.unique(s), d.unique() d為pandas的series物件

判斷每個元素是否空值/非空值,d.isnull(),d.notnull()

random是numpy的乙個子庫,可生成服從特定分布的隨機矩陣,抽樣時可使用。

對指標變數進行主成分分析。是sklearn下的乙個模式物件。

python資料分析基礎 基礎資料預處理

linux pycharm anaconda import pandas as pd data1 pd.dataframe 20,99999,6 30 999999,6 2 999994 27 30,999999,6 columns 年齡 收入 家屬數 data1.info data1.isnull...

資料分析與挖掘之資料預處理

目錄 資料整合 簡單變換 資料規範化 標準化 1 離差標準化 歸一化 2 z score標準化 0 1標準化 3 小數定標規範化 資料規範化 離散化 1 等寬離散化 2 等頻率離散化 3 優化離散 資料整合 import numpy a numpy.array 1,5,6 9,4,3 b numpy...

MATLAB資料分析與挖掘 資料預處理篇

主要工作是刪除原始資料集中的無關資料 重複資料 平滑雜訊資料,篩選掉與挖掘主題無關的資料,處理缺失值 異常值等。資料探勘需要的資料往往分布在不同的資料來源中,資料整合就是將多個資料來源合併存放在乙個一致的資料儲存 如資料倉儲 中的過程。在資料整合時,來自多個資料來源的現實世界實體的表達形式是不一樣的...