利用python實現資料分析的大致主要流程(簡)

2021-09-01 13:23:52 字數 1514 閱讀 8615

前提:這段**只適用於對資料分析有簡單的基礎認識者

data是樣本資料集,target是對應的樣本目標

1. 分析特徵值

如果特徵值過多,將不需要的特徵值刪減,保留有影響或者影響較大的特徵值

2. 分解data和target

如果target目標值的資料量差異巨大可以使用過取樣,也就是將訓練集樣本量小的目標資料擴大,

3. 交叉驗證

4. 模型引數自動調優

決策樹、梯度提公升樹

決策樹from sklearn.tree import decisiontreeclassifier

dtree=decisiontreeclassifier()

dtree.fit(data,target)

dtree_feature=dtree.feature_importances_

梯度提公升樹

gbc=gradientboostingclassifier()

gbc.fit(x_train_new,y_train_new)

gbc_feature=gbc.feature_importances_

將權重為0或者權重過小的特徵刪除

index=some_feature.argsort()

some_feature[index] #這個就是根據權重顯示排序後的特徵

data.columns[index] #這個是分局權重排序後顯示的列名

用排序後的列名擷取後面幾個後面有意義的特徵

data2=data [data.columns[index][6:]] #這個例子是擷取下表為6及以後的列

過取樣:

先要分解出訓練集和測試集:

x_train_new,y_train_new=smote.fit_resample(x_train,y_train)

from imblearn.over_sampling import smote

smote=smote()

x_train_new,y_train_new=smote.fit_resample(x_train,y_train)

交叉驗證:混淆矩陣、交叉表:

混淆矩陣

from sklearn.metrics import confusion_matrix

confusion_matrix(y_test,y_)

y_test 是目標值的測試資料

y_ 是利用模型測試資料得到的結果

交叉表pd.crosstab(y_test,y_)

模型引數自動調優:

針對邏輯回歸模型:

lg=logisticregression()

param_grid=

from sklearn.model_selection import gridsearchcv

gs=gridsearchcv(lg,param_grid)

gs.fit(x_test,y_test)

lg_best=gs.best_estimator_

lg.score(x_test,y_test)

利用python做資料分析

3.2 資料分析的目的 主要就是為了在複雜 龐大的資料庫中提取對我們有用的資訊。讓這些資料產生一定的價值,幫助人們在日常生活中做一些決策時做一些參考。比如,在 中買東西,我們會首先看到物品的銷量 排行 以及顧客對物品的評價。這些都是經過資料分析得出來的。可見,資料分析在其中扮演著多麼重要的角色。3....

利用Python資料分析 pandas入門(三)

obj series range 3 index a b c index obj.index index index 1 index 1 d index物件是不能被修改的 index does not support mutable operations index pd.index np.aran...

利用python進行資料分析

目錄 10 minutes to pandas 翻譯 pandas中loc iloc ix的區別 pandas dropna函式 pandas中dataframe的stack unstack 和pivot 方法的對比 pandas中關於set index和reset index的用法 python匿...