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

熱線電話:13121318867

登錄
首頁精彩閱讀SPSS實現(xiàn)主成分分析與因子分析原理與方法(一)
SPSS實現(xiàn)主成分分析與因子分析原理與方法(一)
2016-12-23
收藏

SPSS實現(xiàn)主成分分析與因子分析原理與方法(一)

一、主成分分析

(1)問題提出
在問題研究中,為了不遺漏和準(zhǔn)確起見,往往會面面俱到,取得大量的指標(biāo)來進(jìn)行分析。比如為了研究某種疾病的影響因素,我們可能會收集患者的人口學(xué)資料、病史、體征、化驗檢查等等數(shù)十項指標(biāo)。如果將這些指標(biāo)直接納入多元統(tǒng)計分析,不僅會使模型變得復(fù)雜不穩(wěn)定,而且還有可能因為變量之間的多重共線性引起較大的誤差。有沒有一種辦法能對信息進(jìn)行濃縮,減少變量的個數(shù),同時消除多重共線性?
這時,主成分分析隆重登場。
(2)主成分分析的原理
主成分分析的本質(zhì)是坐標(biāo)的旋轉(zhuǎn)變換,將原始的n個變量進(jìn)行重新的線性組合,生成n個新的變量,他們之間互不相關(guān),稱為n個“成分”。同時按照方差最大化的原則,保證第一個成分的方差最大,然后依次遞減。這n個成分是按照方差從大到小排列的,其中前m個成分可能就包含了原始變量的大部分方差(及變異信息)。那么這m個成分就成為原始變量的“主成分”,他們包含了原始變量的大部分信息。
注意得到的主成分不是原始變量篩選后的剩余變量,而是原始變量經(jīng)過重新組合后的“綜合變量”。
我們以最簡單的二維數(shù)據(jù)來直觀的解釋主成分分析的原理。假設(shè)現(xiàn)在有兩個變量X1、X2,在坐標(biāo)上畫出散點圖如下:

 

可見,他們之間存在相關(guān)關(guān)系,如果我們將坐標(biāo)軸整體逆時針旋轉(zhuǎn)45°,變成新的坐標(biāo)系Y1、Y2,如下圖:

根據(jù)坐標(biāo)變化的原理,我們可以算出:
Y1 = sqrt(2)/2 * X1 + sqrt(2)/2 * X2
Y2 = sqrt(2)/2 * X1 – sqrt(2)/2 * X2
其中sqrt(x)為x的平方根。
通過對X1、X2的重新進(jìn)行線性組合,得到了兩個新的變量Y1、Y2。
此時,Y1、Y2變得不再相關(guān),而且Y1方向變異(方差)較大,Y2方向的變異(方差)較小,這時我們可以提取Y1作為X1、X2的主成分,參與后續(xù)的統(tǒng)計分析,因為它攜帶了原始變量的大部分信息。
至此我們解決了兩個問題:降維和消除共線性。
對于二維以上的數(shù)據(jù),就不能用上面的幾何圖形直觀的表示了,只能通過矩陣變換求解,但是本質(zhì)思想是一樣的。
二、因子分析
(一)原理和方法:
因子分析是主成分分析的擴(kuò)展。
在主成分分析過程中,新變量是原始變量的線性組合,即將多個原始變量經(jīng)過線性(坐標(biāo))變換得到新的變量。
因子分析中,是對原始變量間的內(nèi)在相關(guān)結(jié)構(gòu)進(jìn)行分組,相關(guān)性強(qiáng)的分在一組,組間相關(guān)性較弱,這樣各組變量代表一個基本要素(公共因子)。通過原始變量之間的復(fù)雜關(guān)系對原始變量進(jìn)行分解,得到公共因子和特殊因子。將原始變量表示成公共因子的線性組合。其中公共因子是所有原始變量中所共同具有的特征,而特殊因子則是原始變量所特有的部分。因子分析強(qiáng)調(diào)對新變量(因子)的實際意義的解釋。
舉個例子:
比如在市場調(diào)查中我們收集了食品的五項指標(biāo)(x1-x5):味道、價格、風(fēng)味、是否快餐、能量,經(jīng)過因子分析,我們發(fā)現(xiàn)了:
x1 = 0.02 * z1 + 0.99 * z2 + e1
x2 = 0.94 * z1 – 0.01 * z2 + e2
x3 = 0.13* z1 + 0.98 * z2 + e3
x4 = 0.84 * z1 + 0.42 * z2 + e4
x5 = 0.97 * z1 – 0.02 * z2 + e1
(以上的數(shù)字代表實際為變量間的相關(guān)系數(shù),值越大,相關(guān)性越大)
第一個公因子z1主要與價格、是否快餐、能量有關(guān),代表“價格與營養(yǎng)”
第二個公因子z2主要與味道、風(fēng)味有關(guān),代表“口味”
e1-5是特殊因子,是公因子中無法解釋的,在分析中一般略去。
同時,我們也可以將公因子z1、z2表示成原始變量的線性組合,用于后續(xù)分析。
(二)使用條件:
(1)樣本量足夠大。通常要求樣本量是變量數(shù)目的5倍以上,且大于100例。
(2)原始變量之間具有相關(guān)性。如果變量之間彼此獨立,無法使用因子分析。在SPSS中可用KMO檢驗和Bartlett球形檢驗來判斷。
(3)生成的公因子要有實際的意義,必要時可通過因子旋轉(zhuǎn)(坐標(biāo)變化)來達(dá)到。
三、主成分分析和因子分析的聯(lián)系與區(qū)別
聯(lián)系:兩者都是降維和信息濃縮的方法。生成的新變量均代表了原始變量的大部分信息且互相獨立,都可以用于后續(xù)的回歸分析、判別分析、聚類分析等等。
區(qū)別:
(1)主成分分析是按照方差最大化的方法生成的新變量,強(qiáng)調(diào)新變量貢獻(xiàn)了多大比例的方差,不關(guān)心新變量是否有明確的實際意義。
(2)因子分析著重要求新變量具有實際的意義,能解釋原始變量間的內(nèi)在結(jié)構(gòu)。


數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

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

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } 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)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".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 = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+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); }