国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

主成分分析(PCA)-Python代碼

這篇具有很好參考價值的文章主要介紹了主成分分析(PCA)-Python代碼。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

主成分分析是利用降維的思想,在損失很少信息的前提下把多個指標轉(zhuǎn)化為幾個綜合指標的多元統(tǒng)計方法。
算法的具體步驟如下:
1)對向量X進行去中心化。
2)計算向量X的協(xié)方差矩陣,自由度可以選擇0或者1。
3)計算協(xié)方差矩陣的特征值和特征向量。
4)選取最大的k個特征值及其特征向量。
5)用X與特征向量相乘。

代碼如下:

一、導入庫

# 數(shù)據(jù)處理
import pandas as pd
import numpy as np
 
# 繪圖
import seaborn as sns
import matplotlib.pyplot as plt

二、讀取數(shù)據(jù)集

df = pd.read_csv(r"C:\Users\1\Desktop\mydata.csv", encoding='gbk', index_col=0).reset_index(drop=True)
## 數(shù)據(jù)來源:國家統(tǒng)計局  2020年31個城市空氣質(zhì)量情況  http://www.stats.gov.cn/tjsj/ndsj/2021/indexch.htm
df

三、球狀檢驗

# Bartlett's球狀檢驗
from factor_analyzer.factor_analyzer import calculate_bartlett_sphericity
 
chi_square_value, p_value = calculate_bartlett_sphericity(df)
print(chi_square_value, p_value)

四、KMO檢驗

# 檢查變量間的相關(guān)性和偏相關(guān)性,取值在0-1之間;KOM統(tǒng)計量越接近1,變量間的相關(guān)性越強,偏相關(guān)性越弱,因子分析的效果越好。
# 通常取值從0.6開始進行因子分析
from factor_analyzer.factor_analyzer import calculate_kmo
 
kmo_all, kmo_model = calculate_kmo(df)
print(kmo_all)

五、相關(guān)矩陣

### step-1  標準化
from sklearn import preprocessing
df = preprocessing.scale(df)
df
### step-2 相關(guān)系數(shù)矩陣
covX = np.around(np.corrcoef(df.T),decimals=3)
covX
### step-3 特征值和特征向量
featValue, featVec=  np.linalg.eig(covX.T)  #求解系數(shù)相關(guān)矩陣的特征值和特征向量
featValue, featVec
### step-4 對特征值進行排序并輸出  降序
featValue = sorted(featValue)[::-1]
featValue

六、繪制散點圖和折線圖

# 同樣的數(shù)據(jù)繪制散點圖和折線圖
plt.scatter(range(1, df.shape[1] + 1), featValue)
plt.plot(range(1, df.shape[1] + 1), featValue)
 
# 顯示圖的標題和xy軸的名字
# 最好使用英文,中文可能亂碼
plt.title("Scree Plot")  
plt.xlabel("Factors")
plt.ylabel("Eigenvalue")
 
plt.grid()  # 顯示網(wǎng)格
plt.show()  # 顯示圖形

七、特征值貢獻度

gx = featValue/np.sum(featValue)
gx

八、特征值的累計貢獻率

lg = np.cumsum(gx)
lg

九、排序選出主成分

#選出主成分
k=[i for i in range(len(lg)) if lg[i]<0.85]
k = list(k)
print(k)

十、選出主成分對應的特征向量矩陣

selectVec = np.matrix(featVec.T[k]).T
selectVe=selectVec*(-1)
selectVec

十一、主成分得分

finalData = np.dot(df,selectVec)
finalData

十二、熱力圖文章來源地址http://www.zghlxwxcb.cn/news/detail-630325.html

# 繪圖
 
plt.figure(figsize = (14,14))
ax = sns.heatmap(selectVec, annot=True, cmap="BuPu")
 
# 設置y軸字體大小
ax.yaxis.set_tick_params(labelsize=15)
plt.title("Factor Analysis", fontsize="xx-large")
 
# 設置y軸標簽
plt.ylabel("Sepal Width", fontsize="xx-large")
# 顯示圖片
plt.show()
 
# 保存圖片
# plt.savefig("factorAnalysis", dpi=500)

到了這里,關(guān)于主成分分析(PCA)-Python代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 【機器學習】 奇異值分解 (SVD) 和主成分分析 (PCA)

    【機器學習】 奇異值分解 (SVD) 和主成分分析 (PCA)

    ????????在機器學習 (ML) 中,一些最重要的線性代數(shù)概念是奇異值分解 (SVD) 和主成分分析 (PCA)。收集到所有原始數(shù)據(jù)后,我們?nèi)绾伟l(fā)現(xiàn)結(jié)構(gòu)?例如,通過過去 6 天的利率,我們能否了解其構(gòu)成以發(fā)現(xiàn)趨勢? ????????對于高維原始數(shù)據(jù),這變得更加困難。這就像

    2024年02月15日
    瀏覽(23)
  • 主成分分析(PCA)及python原理實現(xiàn)

    主成分分析(PCA)及python原理實現(xiàn)

    該定義來自于秒懂百科: ?????????PCA(principal components analysis)即主成分分析技術(shù),又稱主分量分析,旨在利用降維的思想,把多指標轉(zhuǎn)化為少數(shù)幾個綜合指標。 ????????在統(tǒng)計學中,主成分分析PCA是一種簡化數(shù)據(jù)集的技術(shù)。它是一個線性變換。這個變換把數(shù)據(jù)變換

    2024年02月07日
    瀏覽(22)
  • 主成分分析法(PCA)及其python實現(xiàn)

    主成分分析法(PCA)及其python實現(xiàn)

    主成分分析法(Principal Component Analysis,PCA)是一種用于把高維數(shù)據(jù)降成低維,使分析變得更加簡便的分析方法。比如我們的一個樣本可以由 n n n 維隨機變量 ( X 1 , X 2 , . . . , X n ) (X_1,X_2,...,X_n) ( X 1 ? , X 2 ? , ... , X n ? ) 來刻畫,運用主成分分析法,我們可以把這些分量用更

    2024年01月16日
    瀏覽(34)
  • 【數(shù)學建?!砍S盟惴?主成分分析PCA的Python實現(xiàn)

    【數(shù)學建模】常用算法-主成分分析PCA的Python實現(xiàn)

    本文主要講解主成分分析析法(PCA)的python實現(xiàn),后續(xù)會跟進實例分析 主成分分析PCA是一種應用廣泛的和降維方法,對其實現(xiàn)做以下歸納 導入包 定義計算協(xié)方差矩陣函數(shù) X為輸入的數(shù)據(jù),m為樣本數(shù)據(jù)的條數(shù),也就是X的行數(shù)。 對X進行標準化,方法為:減去均值除以方差,這

    2023年04月08日
    瀏覽(32)
  • Python PCA(主成分分析法)降維的兩種實現(xiàn)

    Python PCA(主成分分析法)降維的兩種實現(xiàn)

    ????????PCA降維,一般是用于數(shù)據(jù)分析和機器學習。它的作用是把一個高維的數(shù)據(jù)在保留最大信息量的前提下降低到一個低維的空間,從而使我們能夠提取數(shù)據(jù)的主要特征分量,從而得到對數(shù)據(jù)影響最大的主成分,便于我們對數(shù)據(jù)進行分析等后續(xù)操作。 ????????例如,

    2023年04月17日
    瀏覽(21)
  • 主成分分析(PCA)步驟及代碼

    ??主成分分析(Principal Component Analysis,PCA), 簡稱PCA,是一種統(tǒng)計方法。過正交變換將一組可能存在相關(guān)性的變量轉(zhuǎn)換為一組線性不相關(guān)的變量,轉(zhuǎn)換后的這組變量叫主成分。主成分分析是我們在數(shù)學建模的過程中最為常見的線性降維方式,在比賽中常常會用在數(shù)據(jù)指標過多

    2023年04月08日
    瀏覽(19)
  • 機器學習強基計劃8-3:詳細推導核化主成分分析KPCA算法(附Python實現(xiàn))

    機器學習強基計劃聚焦深度和廣度,加深對機器學習模型的理解與應用?!吧睢痹谠敿毻茖惴P捅澈蟮臄?shù)學原理;“廣”在分析多個機器學習模型:決策樹、支持向量機、貝葉斯與馬爾科夫決策、強化學習等。強基計劃實現(xiàn)從理論到實踐的全面覆蓋,由本人親自從底層編

    2023年04月09日
    瀏覽(22)
  • PCA(主成分分析)的理解與應用(學習筆記)

    PCA(主成分分析)的理解與應用(學習筆記)

    PCA ????????主成分分析(Principal Component Analysis, PCA)是一種線性降維算法,也是一種常用的數(shù)據(jù)預處理(Pre-Processing)方法。它的目標是是用方差(Variance)來衡量數(shù)據(jù)的差異性,并將差異性較大的高維數(shù)據(jù)投影到低維空間中進行表示。絕大多數(shù)情況下,我們希望獲得兩個

    2024年02月05日
    瀏覽(24)
  • Python實現(xiàn):高斯濾波 均值濾波 中值濾波 Canny(邊緣檢測)PCA主成分分析 直方圖規(guī)定化 Mean_Shift

    Python實現(xiàn):高斯濾波 均值濾波 中值濾波 Canny(邊緣檢測)PCA主成分分析 直方圖規(guī)定化 Mean_Shift

    左側(cè)為原圖右側(cè)為高斯濾波后的圖 左圖為帶有噪聲的輸入原圖,右圖為經(jīng)過均值濾波后的圖片 左圖為帶有噪聲的輸入原圖,右圖為經(jīng)過中值濾波后的圖 上圖為輸入原圖,下圖為經(jīng)過Canny邊緣檢測后的圖 上圖為原圖 中圖為規(guī)定目標圖 下圖為原圖經(jīng)過規(guī)定化后的圖 左圖為原輸

    2024年02月07日
    瀏覽(26)
  • 【語音識別】基于主成分分析PCA結(jié)合最近鄰KNN實現(xiàn)聲音自動分類附matlab代碼

    【語音識別】基于主成分分析PCA結(jié)合最近鄰KNN實現(xiàn)聲音自動分類附matlab代碼

    ??作者簡介:熱愛科研的Matlab仿真開發(fā)者,修心和技術(shù)同步精進,代碼獲取、論文復現(xiàn)及科研仿真合作可私信。 ??個人主頁:Matlab科研工作室 ??個人信條:格物致知。 更多Matlab完整代碼及仿真定制內(nèi)容點擊?? 智能優(yōu)化算法 ? ? ? 神經(jīng)網(wǎng)絡預測 ? ? ? 雷達通信? ? ? ?無

    2024年04月27日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包