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

熱線電話:13121318867

登錄
首頁精彩閱讀R語言-回歸分析筆記
R語言-回歸分析筆記
2016-06-02
收藏

R語言-回歸分析筆記

使用若干自變量并建立公式,以預測目標變量

目標變量是連續(xù)型的,則稱其為回歸分析
(1)一元線性回歸分析
y=kx+b
sol.lm<-lm(y~x,data)
abline(sol.lm)
使模型誤差的平方和最小,求參數(shù)k和b,稱為最小二乘
k=cov(x,y)/cov(x,x)
b=mean(y)-k*mean(x)
估計參數(shù)b,k的取值范圍 p元模型 p是自變量數(shù),n是樣本數(shù)
[ki-sd(ki)ta/2(n-p-1),ki+sd(ki)ta/2(n-p-1)] k0表示回歸模型的b;   k1表示k;sd(k)是標準差
自由度 df<-sol.lm$df.residual
left<-summary(sol.lm)$coefficients[,1]-summary(sol.lm)$coeffients[,2]*qt(1-alpha/2,df)
right<-summary(sol.lm)$coefficients[,1]+summary(sol.lm)$coeffients[,2]*qt(1-alpha/2,df)
衡量相關程度
變量x和y相關系數(shù)r=Sxy/sqrt(Sxx)sqrt(Syy) 取值范圍是[-1,1]  cor(x,y)  
判定系數(shù)r^2
修正判定系數(shù) adjusted.r^2
判定系數(shù)在用于多元回歸分析時有一個缺點,自變量數(shù)越多,判定系數(shù)越大
回歸系數(shù)的顯著性檢驗
T檢驗 summary(sol.lm)$coefficients[,4]
計算得到的p.value值越小,其值等于0的概率也就越小,當p.value<0.05,可認定k!=0
F檢驗 summary(sol.lm)$p.value
在整體上檢驗模型參數(shù)是否為0,并計算等于0的概率,當p.value<0.05,則通過了F檢驗
summary(sol.lm)$fstatistic 給出了樣本自由度f、自變量自由度df1、F值df2
可以使用如下代碼直接讀取p.value值
pf(f,df1,df2,lower.tail=F) 或 1-pf(f,df1,df2)

模型誤差(殘差)  residuals
對一個正確的回歸模型,其誤差要服從正態(tài)分布
殘差的標準誤差可以從整體上體現(xiàn)一個模型的誤差情況,它可以用于不同模型間性能的對比

預測

predict(sol.lm)

(2)多元回歸分析
sol.lm<-lm(formula=y~. ,data.train)
 
模型修正函數(shù)update(object,formula)
update函數(shù)可以在lm模型結果的基礎上任意添加或減少自變量,或?qū)δ繕俗兞孔鋈?shù)及開方等建模
 例如:
增加x2平方變量
lm.new<-update(sol.lm, .~.+I(x2^2))
刪除x2變量
.~.-x2
把x2變?yōu)閤2平方變量
.~.-x2+I(x2^2)
增加x1*x2
.~.+x1*x2
在模型中對y開方建模
sqrt(.)~.
 
逐步回歸分析函數(shù) step()
逐步減少變量的方法
lm.step<-step(sol.lm)
模型的ACI數(shù)值越小越好
 
自變量中包含分類型數(shù)據(jù)的回歸分析
分類變量a的取值為i,則模型預測值是f(a1=0,...ai=1,ap=0)
 
(3)Logic回歸 y=1/(1+exp(-x)) 使用最大似然法來估算
使用RODBC包讀取Excel文件
 
root<-"C:/"
file<-paste(root,"data.xls",sep="")
library(RODBC)
excel_file<-odbcConnectExcel(file)
data<-sqlFetch(excel_file,"data")
close(excel_file)
 
使用模型的預測正確率來衡量
 
                               預測數(shù)據(jù)
                              num11              num10
實際數(shù)據(jù)                 num01             num00
 
預測正確率=(num11+num00)/樣本總數(shù)量=(num11+num00)/(num11+num10+num01+num00)
 
t()返回轉(zhuǎn)置
 
glm()是用R語言實現(xiàn)logic回歸分析的核心函數(shù)
family=binomial("logit")
使用step()函數(shù)對模型進行修正
str函數(shù)查看包含的數(shù)據(jù)屬性
 
模型預測
new<-predict(old,newdata=test.data)
new<-1/(1+exp(-new))
new<-as.factor(ifelse(new>=0.5,1,0))
 
模型的性能衡量
performance<-length(which((predict.data==data)==TRUE))/nrow(data)
(4)回歸樹CART
實現(xiàn)CART算法的核心函數(shù)是rpart包的rpart函數(shù),再用plot函數(shù)畫
maptree包的draw.tree函數(shù)
 
讀取葉節(jié)點sol.rpart$frame$var=="<leaf>"
讀取葉節(jié)點序號sol$rpart$where
要使測試集誤差和回歸樹的規(guī)模盡可能小
 
cp復雜度系數(shù) sol.rpart$cptable
xerror是通過交叉驗證獲得的模型誤差
xstd是模型誤差的標準差     xerror取xerror+/-xstd
剪枝就是找到一個合理的cp值
隨著拆分的增多,復雜性參數(shù)會單調(diào)下降,但預測誤差會先降后生
 
剪枝
prune(sol.part,0.02) 把cp<0.02的樹剪除
使用plotcp()函數(shù)可以繪制出cp的波動關系


數(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(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 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); }