DataEye數據清洗實例(一)

隨着信息技術的快速發展,各個領域都在每時每刻以驚人的速度產生出各式各樣的規模巨大的數據信息,人類也在工作生活的方方面面接觸到越來越多的數據信息。然而,人類對數據信息理解的匱乏與數據爆炸的趨勢顯得並不對稱,人類在努力將數據信息轉化爲有利信息知識的同時,也面臨着大數據之中夾雜的“髒數據”的挑戰,對原始數據源的清洗,將其轉化爲可被理解利用的目標數據源,成爲了人類理解數據過程中尤爲重要的一步。

大數據時代的到來,隨着“數據驅動運營”的意識在遊戲行業中的逐漸普及,“數據驅動下的精細化運營”也成了遊戲生產運營過程中的必然趨勢,但在其中也同樣面臨“髒數據”的嚴峻挑戰。DataEye作爲一個專業第三方遊戲數據分析服務商,將結合實際工作中的經驗,在下文中講述DataEye在數據清洗中的實踐。

 

一.數據清洗工作

數據清洗:如填充缺失數據、消除噪聲數據等,主要是通過分析“髒數據”的產生原因和存在形式,利用現有的數據挖掘手段和方法去清洗“髒數據”,將“髒數據”轉化爲滿足數據質量要求或應用要求的數據,從而提高數據集的質量,滿足現階段數據分析的需求。

DataEye數據清洗流程如下圖:

1

 

二.         DataEye數據清洗方案及實踐案例

2

(一)噪聲數據(異常值)清洗

1.利用數據分佈特徵及箱型圖方法來識別單維數據集中噪聲數據(異常值)

假設一組數據如下:

3

一般情況下,對於離散程度並非非常大的數據源來說,數據自身分佈將會集中在某一區域之內,所以利用數據自身分佈特徵來識別噪聲數據,再根據箱型圖的方法在數據集中域中識別離羣值及異常值。

首先,將數據集切等分成個αn區間(α可取1,10,100,1000),區間大小爲

4

截取數據分佈集中的區間作爲數據集中域,找到數據集中域形成新數據組E。

5

利用箱型圖方法,對新數據組剔除離羣值,得到非離羣數據組[Q1 – 3IQR , Q3 + 3IQR],再取非異常數據組[Q1 – 1.5IQR , Q3 + 1.5IQR],得到目標數據。Q1:第一分位數,Q3 :第三分位數,IQR四分位間距IQR = Q3 – Q1 。

6

 

案例一:DataEye平均下載時長計算

在實際情況下,現有的數據平臺系統會遇到各種各樣的關於指標均值計算的問題,遵循數理統計的規律,此時極大噪聲數據對均值計算的負面影響是顯著的。DataEye原始數據源存在一組遊戲下載時長數據集如下圖:

7

如果直接計算其遊戲平均下載時長,得到的結果爲23062.57秒,約6.4小時,與實際情況嚴重不符,說明這一數據集受到顯著的噪聲數據的影響。

對數據集做異常值識別及剔除,將數據集等分爲240300個區間,找到數據集中域[0,3266.376]

8

對取值在[0,3266.376]之間的數據做箱型圖分析,對新數據組剔除離羣值,得到非離羣數據組[ Q1 – 3IQR ,  Q3 + 3IQR],再取非異常數據組[Q1 – 1.5IQR , Q3 + 1.5IQR]。 

 

9

 

最後計算目標數據源的平均下載時長爲192.93秒,約3.22分,符合遊戲運營實際情況。通過數據分佈特徵及箱型圖的方法來識別剔除噪聲數據的方式較爲快捷且效果顯著,可以作爲數據清洗的預清洗步驟。

(未完/待續)

 

本文爲GRG遊戲研究組原創,如需轉載,請註明出處,謝謝合作!