国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

數(shù)據(jù)科學(xué) 第 5 章 主成分分析(降維)、相關(guān)性

ixlei / 2744人閱讀

摘要:主成分分析就是降維,通過線性組合,把多個原始變量合并成若干個主成分,這樣每個主成分都變成原始變量的線性組合。相關(guān)系數(shù)系數(shù)為為為。從結(jié)果看,這個數(shù)據(jù)可能不太適合用來分析,因為降到維后的代筆性不足。

這兩天用學(xué)了主成分分析,用的是PCA。主成分分析就是降維,通過線性組合,把多個原始變量合并成若干個主成分,這樣每個主成分都變成原始變量的線性組合。所以你想看具體哪個特征對結(jié)果的影響大,通過PCA是看不到的。但PCA能把原來的10+數(shù)據(jù)特征轉(zhuǎn)變?yōu)閹讉€,實現(xiàn)過程如下:

導(dǎo)入數(shù)據(jù):

import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

inputfile = "C:/Users/xiaom/Desktop/data/online_shoppers_intention.csv"
df = pd.read_csv(inputfile)

這是后面的幾列

1、數(shù)據(jù)處理

只要購買客戶數(shù)據(jù),對VisitorType、weekend數(shù)據(jù)做處理,轉(zhuǎn)換為0,1;再刪除不要的字段

#只要購買客戶的數(shù)據(jù)
df = df[df["Revenue"] == True]
df["VisitorType"] = np.where(df["VisitorType"] == "Returning_Visitor",1,0)
df["workday"] = np.where(df["Weekend"]==True,0,1)
df.drop(["Weekend","Revenue","Month"], axis=1, inplace=True)
2、相關(guān)性檢測

對df表進(jìn)行相關(guān)性檢測,看每個字段的相關(guān)度,刪除相關(guān)度高的字段,減少計算量。如果自變量屬于中度以上線性相關(guān)的(>0.6)多個變量,只保留一個即可。

1、2相關(guān)系數(shù)0.61;3、4系數(shù)為0.63;5、6為0.91;7、8為0.74。相關(guān)度一般在0.64以上就認(rèn)為是比較相關(guān)的關(guān)系,所以刪除5

#求各字段的相關(guān)性,用corr()函數(shù),并保留2位小數(shù)
df.corr().round(2)
#結(jié)果:1,2相關(guān)系數(shù)0.61;3,4系數(shù)為0.63;5,6為0.91;7,8為0.74。所以對相關(guān)性高的保留1個字段
df.drop(["Administrative_Duration", "Informational_Duration",
         "ProductRelated_Duration",
         "BounceRates"],axis=1, inplace=True)
print(df)
3、標(biāo)準(zhǔn)化處理
x = df
#對PageValues相差太大,對其進(jìn)行標(biāo)準(zhǔn)化
from sklearn import preprocessing
x = preprocessing.scale(x)
4、PCA
#用PCA(主成分分析法),來查看對購買影響最大的特征
from sklearn.decomposition import PCA
model = PCA(n_components=7)   #把數(shù)據(jù)降到6維
model.fit(x)
print("降到6維后,這6維的代表性為:")
print(model.explained_variance_ratio_)
print(model.components_) #返回具有最大方差的成分
print("返回參數(shù)的值")
print(model.get_params)  #返回各個參數(shù)的值
#print(model.get_precision())

#下面是畫圖的
x2 = model.transform(x)
df["pca1"] = x2[:,0]
df["pca2"] = x2[:,1]
#print(df.head( ))
sns.lmplot("pca1","pca2", data=df, fit_reg=False)
plt.show()

左邊是降維后的結(jié)果,68%左右,數(shù)據(jù)從原來的10維下降到了6維。從結(jié)果看,這個數(shù)據(jù)可能不太適合用pca來分析,因為降到6維后的代筆性不足70%。
右邊是降維后的圖。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/42696.html

相關(guān)文章

  • 【學(xué)習(xí)摘錄】機(jī)器學(xué)習(xí)特征選擇

    摘要:應(yīng)用過機(jī)器學(xué)習(xí)進(jìn)行數(shù)據(jù)挖掘的同學(xué)應(yīng)該都知道特征選擇對模型表現(xiàn)的重要性。本文基于網(wǎng)上經(jīng)典特征選擇相關(guān)文章整理出干貨常用方法分類以及調(diào)包俠該如何用快速上手,供大家參考。 應(yīng)用過機(jī)器學(xué)習(xí)進(jìn)行數(shù)據(jù)挖掘的同學(xué)應(yīng)該都知道特征選擇對模型表現(xiàn)的重要性。本文基于網(wǎng)上經(jīng)典特征選擇相關(guān)文章整理出干貨:常用方法分類以及調(diào)包俠該如何用sklearn快速上手,供大家參考。 (一)預(yù)處理: 1 無量綱化: 1.1 ...

    lyning 評論0 收藏0
  • ApacheCN 人工智能知識樹 v1.0

    摘要:貢獻(xiàn)者飛龍版本最近總是有人問我,把這些資料看完一遍要用多長時間,如果你一本書一本書看的話,的確要用很長時間。為了方便大家,我就把每本書的章節(jié)拆開,再按照知識點合并,手動整理了這個知識樹。 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=200); 貢獻(xiàn)者:飛龍版...

    劉厚水 評論0 收藏0
  • 機(jī)器學(xué)習(xí)之PCA與梯度上升法

    摘要:主成分分析,簡稱是一種非監(jiān)督學(xué)習(xí)的機(jī)器算法,主要用于數(shù)據(jù)的降維。對于的目標(biāo)函數(shù)求使得最大,可以使用梯度上升法來解決。利用梯度公式的梯度上升法實際上是批量梯度上升法還有隨機(jī)梯度上升法和小批量梯度上升法,本文不涉及。 主成分分析(Principle Component Analysis,簡稱:PCA)是一種非監(jiān)督學(xué)習(xí)的機(jī)器算法,主要用于數(shù)據(jù)的降維。 PCA 基本原理 以有2個特征的二維平面...

    curried 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<