最近在學習python,也看到了python在數學計算方面的優勢,特別是numpy和scipy的強大,恰好看到乙個資料分析的題目,想拿來練練手。開始做了之後,光顧著解決問題了,沒有使用python,反而使用了spss來解決的。
一、資料材料
手頭有的資料報括了兩個csv格式的資料集,分別是6000多條的training data和2000多條的validate data
二、處理思路
1、資料清理
a、在training data中一共有14個自變數屬性和2個因變數屬性,其中在12個自變數屬性中有5個是在validate data中不存在的,所以這5個屬性可以清理掉;training data中剩下的7個屬性中有2個屬性列的值都是一樣的,也就是說這兩列屬性的值不會對因變數造成影響,因此也可以清理掉。
b、在剩下的記錄中,存在一些記錄某些屬性缺失的情況,也存在一些屬性值個性化太強,這些資料也清理掉。
2、資料轉換
a、在training data剩下分析的屬性中,有兩列的取值是列舉型別的,且是字串,因此可以將這些值進行數值化轉換。
b、再觀察剩下的資料,發現列與列之間的大小差異太大,因此需要進行歸一化處理。通常的歸一化處理函式包括以下三種:
線性歸一化函式:y=(x - min)/(max-min),但是這種歸一化函式不是乙個等價平移變化,因為不能保證validate data中的min和max也在此範圍內。
底數函式歸一化:y=log10(x),這種要求x的取值範圍都大於0
反正切歸一化:y=atan(x)*2/pi,這個是我使用的歸一化函式。
3、回歸擬合
a、因為是多個變數,因此首先想到的是多因子線性回歸,使用spss很容易做到這點,但是做出來效果不是很多,r為0.330。在進行多因子線性擬合的時候,也嘗試過進入、逐步、刪除、向後、向前等方式,得出來的r值都沒有大於0.330的,大多數都是在0.328~0.329之間變換。
b、也觀察過資料,嘗試看看資料之間有沒有相關性,但是無論是皮爾森相關性還是sig單測,都沒有看出來有強相關性,相關性矩陣的數值都是在0.4以下。
三、其他思路
乙個新手,我能想到的都想到了,基本上是google著spss使用指南和統計學理論來做的,非線性回歸太難,無從下手,現在想想,還剩下的思路就是在資料清洗的時候,清理的粒度不夠大。可以找個時間再清洗一下,去掉一下噪點試試。
SPSS Modeler資料探勘 資料探勘概述
資料探勘 是一種通過數理模式來分析大量資料,以找出不同的客戶或市場劃分,分析出消費者喜好和行為的方法。可以描述為 是按企業既定業務目標,對大量的企業資料進行探索和分析,揭示隱藏的 未知的 或驗證已知的規律性,並進一步將其模型化的先進的有效的方法。資料探勘 data mining 在技術上的定義是從大...
資料探勘 資料
對關注的屬性,樣本與原始資料集有相同的性質,則用抽樣計算的結果與全集是一樣。1.1 抽樣的方法 1 簡單隨機抽樣 random sampling 放回 不放回 2 分層抽樣 stratified sampling 如果資料集不同型別的資料數量差異過大,則隨機抽樣會丟失數量少的樣本。可針對不同資料組,...
資料探勘 關聯規則挖掘
關聯規則 association rule 是資料中所蘊含的一類重要規律。關聯規則挖掘的目標是在資料專案中找出所有的併發關係 cooccurrence relationships 這種關係也稱為關聯 association 關聯規則挖掘的經典應用是購物籃 market basket 關聯規則挖掘並沒...