99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話(huà):13121318867

登錄
首頁(yè)精彩閱讀主成分分析和因子分析及其在R中的…
主成分分析和因子分析及其在R中的…
2018-01-13
收藏

主成分分析和因子分析及其在R中的…

主成分分析和探索性因子分析是兩種用來(lái)探索和簡(jiǎn)化多變量復(fù)雜關(guān)系的常用方法,它們之間有聯(lián)系也有區(qū)別。

主成分分析(PCA)是一種數(shù)據(jù)降維方法,它能將大量相關(guān)變量轉(zhuǎn)化為一組很少的不相關(guān)變量,這些無(wú)關(guān)變量稱(chēng)為主成分。例如,使用PCA可將30個(gè)相關(guān)(很可能冗余)的環(huán)境變量轉(zhuǎn)化為5個(gè)無(wú)關(guān)的成分變量,并且盡可能地保留原始數(shù)據(jù)集的信息。

相對(duì)而言,探索性因子分析(EFA)是一系列用來(lái)發(fā)現(xiàn)一組變量的潛在結(jié)構(gòu)的方法。它通過(guò)尋找一組更小的、潛在的或隱藏的結(jié)構(gòu)來(lái)解釋已觀測(cè)到的、顯式的變量間的關(guān)系。

主成分分析和因子分析及其在R中的實(shí)現(xiàn)

從上圖可以看出,主成分(PC1和PC2)是觀測(cè)變量(X1到X5)的線性組合。形成線性組合的權(quán)重都是通過(guò)最大化各主成分所解釋的方差來(lái)獲得,同時(shí)還要保證個(gè)主成分間不相關(guān)。相反,因子(F1和F2)被當(dāng)做是觀測(cè)變量的結(jié)構(gòu)基礎(chǔ)或“原因”,而不是它們的線性組合。代表觀測(cè)變量方差的誤差(e1到e5)無(wú)法用因子來(lái)解釋。圖中的圓圈表示因子和誤差無(wú)法直接觀測(cè),但是可通過(guò)變量間的相互關(guān)系推導(dǎo)得到。在本例中,因子間帶曲線的箭頭表示它們之間有相關(guān)性。在EFA模型中,相關(guān)因子是常見(jiàn)的,但并不是必需的。

2 R中的主成分因子分析

R的基礎(chǔ)安裝包提供了PCA和EFA的函數(shù),分別為princomp()和factanal()。下文將重點(diǎn)介紹psych包中提供的函數(shù),它們提供了比基礎(chǔ)函數(shù)更豐富和有用的選項(xiàng)。

psych包中有用的因子分析函數(shù)

因子分析常見(jiàn)步驟:

(1)數(shù)據(jù)預(yù)處理。兩種方法都是根據(jù)觀測(cè)變量間的相關(guān)性來(lái)推導(dǎo)結(jié)果,可以輸入原始數(shù)據(jù)矩陣或相關(guān)系數(shù)矩陣。

(2)選擇因子模型。判斷是選擇主成分分析(數(shù)據(jù)降維)還是探索性因子分析(發(fā)現(xiàn)潛在結(jié)構(gòu))。如果選擇因子分析方法,還需要選擇一種估計(jì)因子模型的方法(如最大似然估計(jì))。

(3)判斷要選擇的主成分/因子數(shù)目

(4)選擇主成分/因子

(5)旋轉(zhuǎn)主成分/因子

(6)解釋結(jié)果

3 主成分分析

第一主成分是對(duì)原來(lái)觀測(cè)變量的加權(quán)組合,對(duì)初始變量集的方差解釋性最大。第二主成分次之,同時(shí)與第一成分正交(不相關(guān))。

1判斷主成分個(gè)數(shù)

判斷需要多少個(gè)主成分的準(zhǔn)則:

A根據(jù)先驗(yàn)經(jīng)驗(yàn)和理論知識(shí)判斷主成分分?jǐn)?shù)

B根據(jù)要解釋變量方差的積累值的閾值來(lái)判斷需要的主成分?jǐn)?shù)

C通過(guò)檢查變量間k×k的相關(guān)系數(shù)矩陣來(lái)判斷保留的主成分?jǐn)?shù)

最常見(jiàn)的是基于特征值的方法。每個(gè)主成分都與相關(guān)系數(shù)矩陣的特征值相關(guān)聯(lián),第一主成分

與最大的特征值相關(guān)聯(lián),第二主成分與第二大的特征值相關(guān)聯(lián),依此類(lèi)推。

Kaiser-Harris準(zhǔn)則建議保留特征值大于1的主成分,特征值小于1的成分所解釋的方差比包含在單個(gè)變量中的方差更少。

Cattell碎石檢驗(yàn)則繪制了特征值與主成分?jǐn)?shù)的圖形。這類(lèi)圖形可以清晰地展示圖形彎曲狀況,

在圖形變化最大處之上的主成分都可保留。

最后,也可以進(jìn)行模擬,依據(jù)與初始矩陣相同大小的隨機(jī)數(shù)據(jù)矩陣來(lái)判斷要提取的特征值。若基于真實(shí)數(shù)據(jù)的某個(gè)特征值大于一組隨機(jī)數(shù)據(jù)矩陣相應(yīng)的平均特征值,那么該主成分可以保留。該方法稱(chēng)作平行分析。

利用fa.parallel()函數(shù),你可以同時(shí)對(duì)三種特征值判別準(zhǔn)則進(jìn)行評(píng)價(jià)。

格式:fa.parallel(data, fa=”P(pán)C”, n.iter=100,show.legend=FALSE, main=””)

2提取主成分

principal()函數(shù)可以根據(jù)原始數(shù)據(jù)矩陣或者相關(guān)系數(shù)矩陣做主成分分析。

格式為:principal(r,nfactors=,rotate=,scores=)

其中:r是相關(guān)系數(shù)矩陣或原始數(shù)據(jù)矩陣;

nfactors設(shè)定主成分?jǐn)?shù)(默認(rèn)為1);

rotate指定旋轉(zhuǎn)的方法(默認(rèn)最大方差旋轉(zhuǎn)(varimax));

scores設(shè)定是否需要計(jì)算主成分得分(默認(rèn)不需要)。

輸出結(jié)果解釋?zhuān)?

PC1、PC2欄包含了成分載荷,指觀測(cè)變量與主成分的相關(guān)系數(shù)。

h2欄指成分因子方差——主成分對(duì)每個(gè)變量的方差解釋度。

u2欄指成分唯一性——方差無(wú)法被主成分解釋的比例(1-h2)。

SS loadings行包含了與主成分相關(guān)聯(lián)的特征值,指與特定主成分相關(guān)聯(lián)的標(biāo)準(zhǔn)化后的方差值。

Proportion Var行表示的是每個(gè)主成分對(duì)整個(gè)數(shù)據(jù)集的解釋程度。

3主成分旋轉(zhuǎn)

旋轉(zhuǎn)是一系列將成分載荷陣變得更容易解釋的數(shù)學(xué)方法,它們盡可能地對(duì)成分去噪。旋轉(zhuǎn)方法有兩種:使選擇的成分保持不相關(guān)(正交旋轉(zhuǎn)),和讓它們變得相關(guān)(斜交旋轉(zhuǎn))。最流行的正交旋轉(zhuǎn)是方差極大旋轉(zhuǎn),它試圖對(duì)載荷陣的列進(jìn)行去噪,使得每個(gè)成分只是由一組有限的變量來(lái)解釋?zhuān)摧d荷陣每列只有少數(shù)幾個(gè)很大的載荷,其他都是很小的載荷)。

以方差極大旋轉(zhuǎn)為例,旋轉(zhuǎn)后,主成分仍不相關(guān),對(duì)變量的解釋性不變,累計(jì)方差解釋性也沒(méi)有變化,變的只是各個(gè)主成分對(duì)方差的解釋度(即線性系數(shù))。

4獲取主成分得分

Principal函數(shù)中score=TRUE時(shí),即返回每個(gè)對(duì)象在主成分上的得分。當(dāng)輸入數(shù)據(jù)是相關(guān)系數(shù)矩陣時(shí),則不可能獲取每個(gè)觀測(cè)的主成分得分,但可以得到用來(lái)計(jì)算主成分得分的系數(shù)。

4 探索性因子分析

EFA的目標(biāo)是通過(guò)發(fā)掘隱藏在數(shù)據(jù)下的一組較少的、更為基本的無(wú)法觀測(cè)的變量,來(lái)解釋一組可觀測(cè)變量的相關(guān)性。這些虛擬的、無(wú)法觀測(cè)的變量稱(chēng)作因子。(每個(gè)因子被認(rèn)為可解釋多個(gè)觀測(cè)變量間共有的方差,因此準(zhǔn)確來(lái)說(shuō),它們應(yīng)該稱(chēng)作公共因子)。

主成分分析和因子分析及其在R中的實(shí)現(xiàn)

1判斷需提取的公共因子數(shù)

同樣使用fa.parallel函數(shù),令fa=”both”,因子圖形將會(huì)同時(shí)展示主成分和公共因子分析的結(jié)果。

對(duì)于EFA,Kaiser-Harris準(zhǔn)則的特征值數(shù)大于0,而不是1

2提取公共因子

fa(r,nafctors=,n.obs=,rotate=,scores=,fm=)

其中:r是相關(guān)系數(shù)矩陣或者原始數(shù)據(jù)矩陣;

nfactors設(shè)定提取的因子數(shù)(默認(rèn)為1);

n.obs是觀測(cè)數(shù)(輸入相關(guān)系數(shù)矩陣時(shí)需要填寫(xiě));

rotate設(shè)定旋轉(zhuǎn)的方法(默認(rèn)互變異數(shù)最小法);

scores設(shè)定是否計(jì)算因子得分(默認(rèn)不計(jì)算);

fm設(shè)定因子化方法(默認(rèn)極小殘差法)。

PCA不同,提取公共因子的方法很多,包括最大似然法(ml)、主軸迭代法(pa)、加權(quán)

最小二乘法(wls)、廣義加權(quán)最小二乘法(gls)和最小殘差法(minres)。統(tǒng)計(jì)學(xué)家青睞使用最大似然法,因?yàn)樗辛己玫慕y(tǒng)計(jì)性質(zhì)。不過(guò)有時(shí)候最大似然法不會(huì)收斂,此時(shí)使用主軸迭代法效果會(huì)很好。

3因子旋轉(zhuǎn)

使用正交旋轉(zhuǎn)將人為地強(qiáng)制兩個(gè)因子不相關(guān)。使用斜交轉(zhuǎn)軸法,則允許兩個(gè)因子相關(guān)。

對(duì)于正交旋轉(zhuǎn),因子分析的重點(diǎn)在于因子結(jié)構(gòu)矩陣(變量與因子的相關(guān)系數(shù)),而對(duì)于斜交旋轉(zhuǎn),因子分析會(huì)考慮三個(gè)矩陣:因子結(jié)構(gòu)矩陣、因子模式矩陣和因子關(guān)聯(lián)矩陣。

因子模式矩陣即標(biāo)準(zhǔn)化的回歸系數(shù)矩陣。它列出了因子預(yù)測(cè)變量的權(quán)重。PA1,PA2…

因子關(guān)聯(lián)矩陣即因子相關(guān)系數(shù)矩陣。

因子結(jié)構(gòu)矩陣(或稱(chēng)因子載荷陣)在輸出結(jié)果上沒(méi)顯示出來(lái)。

4因子得分

因子分析不怎么關(guān)注因子得分

5其他與EFA相關(guān)的包

FactoMineR包不僅提供了PCA和EFA方法,還包含潛變量模型。

FaiR包用遺傳算法來(lái)估計(jì)因子分析模型。

GPArotation包則提供了許多因子旋轉(zhuǎn)方法。

nFactors包提供了用來(lái)判斷因子數(shù)目的許多復(fù)雜方法


數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢(xún)
客服在線
立即咨詢(xún)
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶(hù)后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }