Python資料分析與挖掘實戰 挖掘建模

2021-07-31 11:48:13 字數 1745 閱讀 4230

常用的分類與**演算法

1回歸模型分類

1線性回歸---自變數因變數線性關係,最小二乘法求解

2非線性回歸--自變數因變數非線性關係,函式變換為線性關係,或非線性最小二乘方法求解

3logistic回歸--因變數一般有1和0兩種取值,將因變數的取值範圍控制再0-1範圍內

4嶺回歸--自變數之間具有多重共線性

5主成分回歸--自變數之間具有多重共線性

logistics回歸  p=p(y=1|x),取0概率是1-p,取1和取0的概率之比為p/1-p,成為事件的優勢比odds,odds取對數得logistic變換logit(p)=ln(p/1-p),再令logit(p)=ln(p/1-p)=z ,則可以求出p=1/1+e^-z,則為logistic函式

p在0,1之間變換時,odds取值為0,+無窮,ln(p/1-p)的取值範圍事-無窮,+無窮

logistics回歸模型步驟

1根據挖掘目的設定特徵,並篩選特徵x1,x2...xp

使用sklearn中的feature_selection庫,f檢驗來給出特徵的f值和p值,篩選出f大的,p小的值。rfe(遞迴特徵消除)和ss(穩定性選擇)

2列出回歸方程ln(p/1-p)=β0+β1x1+...+βpxp+e

3估計回歸係數

4模型檢驗

5**控制

隨機邏輯回歸進行特徵篩選,邏輯回歸進行模型訓練評估

#-*-coding:utf-8-*-
importpandasaspd

filename='bankloan.xls'

data = pd.read_excel(filename)

x=data.iloc[:,:8].as_matrix()

y=data.iloc[:,

8].as_matrix()

fromsklearn.linear_modelimportlogisticregressionaslr

fromsklearn.linear_modelimportrandomizedlogisticregressionasrlr

rlr = rlr()

rlr.fit(x,y)#

訓練模型

printrlr.get_support()#

獲取篩選結果

printrlr.scores_#

獲取評分

print','.join(data.columns[rlr.get_support()])#

有效特徵為

x=data[data.columns[rlr.get_support()]].as_matrix() #

篩選好特徵

printx

lr = lr()

lr.fit(x,y)#

訓練模型

print(lr.score(x,y))#

模型的平均正確率,使用訓練樣本測試

python資料分析與挖掘實戰 資料探勘基礎

從大量資料 包括文字 中挖掘出隱含的 未知的 對決策有潛在價值的關係 模式和趨勢,並用這些知識和規則建立用於決策支援的模型,提高 性決策支援的方法 工具和過程,就是資料探勘 它是利用各種分析工具在大量資料中尋找其規律和發現模型與資料之間關係的過程,是統計學 資料庫技術和人工智慧技術的綜合。1.定義挖...

Python資料分析與挖掘實戰學習07

一 python基礎 1.python簡介 python是一種物件導向的解釋型語言,由荷蘭人guido van rossum與1989年發明,第乙個公開發行版本於1991年發布。python語法簡潔清晰,強制用空白符作為語句縮排。python語言最大的特點是簡單和強大。2.python庫 1 bas...

Python資料分析與挖掘實戰學習11

一 資料變換 1.連續屬性離散化 一些資料探勘演算法,特別是將某些分類演算法 如id3演算法 apriori演算法等 要求資料是分類屬性形式。這樣,常常需要將連續屬性變換成分類屬性,即連續屬性離散化。1 離散化的過程 連續屬性的離散化就是在資料的取值範圍內設定若干個離散的劃分點,將取值範圍劃分為一些...