1. 程式人生 > >數據挖掘方法系列(一)數據探索

數據挖掘方法系列(一)數據探索

引用 手工錄入 如果 操作員 開始 區間和 運用 基礎 屬性

為什麽要做數據探索?
了解數據的類型和人與人溝通過程中了解對方的性別一樣重要,人與人溝通知道對方的性別才能用不同的方式與其溝通,不同的數據類型能做的操作也不一樣。
探索數據探索哪些?數據的類型和數據的質量。
數據類型分為定性和定量的。
定性也可以說是分類的,包括標稱和序數。標稱很好理解,用戶ID、用戶的名稱也屬於標稱,雖然也可以重復,但大致還是能代表一個個體;序數有類型{好,非常好,超級好},可以比較大小的,比如“超級好好”比“好”在好的程度要高,{高,較高,非常高}也屬於序數。
定量可以說是連續的,包括區間和比率。區間是可以做差操作的。比如日期,可以求日期之間的區間,今年和去年相差一年;比率既可以求區間,又可以求比率。比如年齡是比率,20歲比30歲年輕10歲,還可以求年齡的均值,。
數據類型除了這種分類還有別的分類,但這樣的分類是基礎分類,掌握了就可以以不變應萬變了。

數據的質量主要有:屬性值缺失、對象重復、離群點、數據不一致以及數據錯誤。造成這些數據質量問題的原因有很多,比如操作員手工錄入時發生錯誤、用戶填寫時造成的筆誤和精準偏差(對一個問題的理解不到位或問卷設計不合理)、再比如傳感器收集時失靈等問題。目前,很少有企業一開始收集大量的數據是為做挖掘,基本都是數據積累到一定量然後有了做挖掘的需求,不管是從數據還是從業務驅動上來說都是這樣的,這樣數據可能分散在各個業務系統中,缺失、不一致問題必然存在,需要通過各種預處理手段,將數據的質量提升到一定高度。

那麽問題來了,如何做數據探索呢?
前面說了,需要探索數據類型和數據質量,接下來就講運用兩種工具來探索數據,商用數據挖掘軟件IBM SPSS Modeler以及python語言。
IBM SPSS Modeler現在是IBM公司的一款數據挖掘工具,它能用拖拉拽的方式實現數據挖掘建模。使用方法在這裏不介紹,只介紹探索的結果。
這是探索字段的數據類型,連續型,值範圍,以及是否有缺失。

技術分享圖片

下面是探索數據質量,分為數據的描述統計信息和質量評估。
描述統計包括圖形化/數據類型/最小值/最大值/平均值/標準差/偏度/是否唯一/有效值等等這些指標;

技術分享圖片

質量評估包括離群值/極值/完成率/有效記錄數/無效值個數/字符型空值個數/空白個數/控制個數等

技術分享圖片

modeler是目前為止我用過的挖掘工具中最好的入門工具,盡管數據處理功能和支持挖掘算法不屬於最多的,執行效率也不是最高的,但好在簡單易懂;如果是公司內部使用有版權風險,或者是大數據量又窮那就還是用python吧。
Python語言是一門開源的編程語言,其中有很多大神貢獻了很多模塊,我們直接導入模塊,就可以運用模塊的功能,雖然是編程語言,但是學習成本真的很低,很多功能都是拿來就可以用。
#導入各個模塊
from sklearn import datasets #導入機器學習庫中的數據集
import pandas as pd #導入pandas模塊,用來處理數據,

iris=datasets.load_iris()
iris_X=iris.data
iris_Y=iris.target

iris_X1=pd.DataFrame(iris_X)
iris_Y1=pd.Series(iris_Y) #因為下面用的數據探索的函數只有pandas中的DataFrame,Series

print(X1.describe(),X1.head(),X1.corr(),X1.corrwith(y1)) #引用數據探索的函數

工具永遠都只是工具,只能幫助我們工作,不能替代我們思考,只有不斷思考知道需要做什麽,怎麽做才能進步~

數據挖掘方法系列(一)數據探索