R語言隨機(jī)森林RandomForest、邏輯回歸Logisitc預(yù)測心臟病數(shù)據(jù)和可視化分析|附代碼數(shù)據(jù)
全文鏈接:http://tecdat.cn/?p=22596
最近我們被客戶要求撰寫關(guān)于預(yù)測心臟病的研究報告,包括一些圖形和統(tǒng)計輸出。
本報告是對心臟研究的機(jī)器學(xué)習(xí)/數(shù)據(jù)科學(xué)調(diào)查分析。更具體地說,我們的目標(biāo)是在心臟研究的數(shù)據(jù)集上建立一些預(yù)測模型,并建立探索性和建模方法。但什么是心臟研究?
研究大綱
介紹數(shù)據(jù)集和研究的目標(biāo)
探索數(shù)據(jù)集
可視化
使用Chi-Square獨(dú)立檢驗(yàn)、Cramer's V檢驗(yàn)和GoodmanKruskal tau值對數(shù)據(jù)集進(jìn)行探索
預(yù)測模型,Logisitic回歸和RandomForest
step()
bestglm()
兩個邏輯回歸的實(shí)例
使用5折交叉驗(yàn)證對模型實(shí)例進(jìn)行評估
變量選擇改進(jìn)
隨機(jī)森林模型
用RandomForest和Logisitc回歸進(jìn)行預(yù)測
使用可視化進(jìn)行最終的模型探索
結(jié)論和下一步改進(jìn)
1.簡介
我們閱讀了關(guān)于FHS的資料:
心臟研究是對社區(qū)自由生活的人群中心血管疾病病因的長期前瞻性研究。心臟研究是流行病學(xué)的一個里程碑式的研究,因?yàn)樗堑谝粋€關(guān)于心血管疾病的前瞻性研究,并確定了風(fēng)險因素的概念。
該數(shù)據(jù)集是FHS數(shù)據(jù)集的一個相當(dāng)小的子集,有4240個觀測值和16個變量。這些變量如下:
觀測值的性別。該變量在數(shù)據(jù)集中是一個名為 "男性 "的二值。
年齡:體檢時的年齡,單位為歲。
教育 : 參與者教育程度的分類變量,有不同的級別。一些高中(1),高中/GED(2),一些大學(xué)/職業(yè)學(xué)校(3),大學(xué)(4)
目前吸煙者。
每天抽的煙的數(shù)量
檢查時使用抗高血壓藥物的情況
流行性中風(fēng)。流行性中風(fēng)(0 = 無?。?。
流行性高血壓(prevalentHyp)。流行性高血壓。如果接受治療,受試者被定義為高血壓
糖尿病。根據(jù)第一次檢查的標(biāo)準(zhǔn)治療的糖尿病患者
總膽固醇(mg/dL)
收縮壓(mmHg)
舒張壓(mmHg)
BMI: 身體質(zhì)量指數(shù),體重(公斤)/身高(米)^2
心率(次/分鐘)
葡萄糖。血糖水平(mg/dL)
最后是因變量:冠心病(CHD)的10年風(fēng)險。
這4240條記錄中有3658條是完整的病例,其余的有一些缺失值。
2.了解數(shù)據(jù)的意義
在每一步之前,要加載所需的庫。
require(knitr)require(dplyr)require(ggplot2)require(readr)require(gridExtra)?#呈現(xiàn)多幅圖
然后,加載心臟研究的數(shù)據(jù)集。
2.1 變量和數(shù)據(jù)集結(jié)構(gòu)的檢查
我們對數(shù)據(jù)集進(jìn)行一次檢查。
dim(dataset)

kable(head(dataset))

str(dataset)

##檢查變量的摘要summary(dataset)

2.2 數(shù)據(jù)集的單變量圖
生成一個數(shù)據(jù)集的所有單變量圖。
#?需要刪除字符、時間和日期等變量?????????????????????????????????????????????????????geom_bar(data?=?dataset,
?????????????????????????????????????????????????????theme_linedraw()+#colnames(dataset)????????marrangeGrob(grobs=all_plots,?nrow=2,?ncol=2)




這是為了獲得對變量,對整個問題和數(shù)據(jù)集的理解,將通過多變量或至少雙變量的可視化來實(shí)現(xiàn)。
點(diǎn)擊標(biāo)題查閱往期內(nèi)容

數(shù)據(jù)分享|R語言邏輯回歸、Naive Bayes貝葉斯、決策樹、隨機(jī)森林算法預(yù)測心臟病

左右滑動查看更多

01

02

03

04

2.3 數(shù)據(jù)集的雙變量圖:因變量和預(yù)測因素之間的關(guān)系
現(xiàn)在我們可以進(jìn)行一些雙變量的可視化,特別是為了看到因變量(TenYearCHD)和預(yù)測因素之間的關(guān)系。由于圖的數(shù)量太多,不是所有的一對變量都能被調(diào)查到!我們可以在后面的步驟中繼續(xù)調(diào)查。我們可以稍后再回到這一步,深入了解。
下面的代碼可以生成因變量的所有雙變量圖。由于因變量是一個二元變量,所以當(dāng)預(yù)測變量是定量的時候,我們會有boxplots,或者當(dāng)預(yù)測變量是定性的時候,我們會有分段的bar圖。
for?(var?in?colnames(dataset)?){
????????if?(class(dataset[,var])?%in%?c("factor","logical")?)?{
ggplot(data?=?dataset)??+?
????????????????????????geom_bar(?aes_string(x?=?var,
????????????????????????
???????????????????????????????????????????????????
????????}?else?if?(class(dataset[,var])?%in%?c("numeric","double","integer")?)?{
?ggplot(data?=?dataset)?+?
????????????????????????geom_boxplot()




根據(jù)我們掌握的情況,男性與TenYearCHD直接相關(guān),因此男性這個變量似乎是一個相對較好的預(yù)測因素。同樣,年齡似乎也是一個很好的預(yù)測因素,因?yàn)門enYearCHD == TRUE的病人有較高的年齡中位數(shù),其分布幾乎相似。相反,不同類別的教育和因變量之間似乎沒有關(guān)系。目前的吸煙者變量與因變量有輕微的關(guān)系,因?yàn)槟壳暗奈鼰熣呋糡enYearCHD的風(fēng)險略高。
2.4 使用Goodman&Kruskal tau檢驗(yàn)定性變量之間的關(guān)系
然而,除了這些本質(zhì)上是定性方法的圖表外,人們可能希望對這種關(guān)聯(lián)有一個數(shù)字值。為了有這樣的數(shù)字測量,我想使用Goodman&Kruskal的tau測量,這是兩個無序因子,即兩個分類/名義變量之間的關(guān)聯(lián)測量。在我們這個數(shù)據(jù)集中的因子變量中,只有教育是_序數(shù)變量_,即它的類別有意義。這種測量方法比Cramer's V或chi-square測量方法更具信息量。
GKtauData(cat_variables)plot(dataset)

可以看出,關(guān)于因變量的變異性,預(yù)測因素的解釋力非常小。換句話說,根據(jù)Goodman和Kruskal's tau度量,我們的預(yù)測因素和因變量之間幾乎沒有關(guān)聯(lián)。這可以從TenYearCHD一欄的數(shù)值中看出。
假設(shè)我的G&Ktau檢驗(yàn)正確的話,這對模型來說并不是一個好消息。
為了檢驗(yàn)這些發(fā)現(xiàn),我們可以用Chi-square檢驗(yàn)來檢驗(yàn)分類變量與因變量的關(guān)聯(lián)的顯著性,然后用Phi相關(guān)系數(shù)來評估可能的關(guān)聯(lián)的強(qiáng)度。Phi用于2x2等值表。對于更大的表格,即有更多層次的變量,可以利用Cramer's V。
chisq.test(table(dataset_cat$p.value?))
????????phi(matrix(table(dataset_cat_variables[,7],
奇怪的是,當(dāng)Chi-square的P值如此之低時,可能的關(guān)聯(lián)的顯著性為零。這兩個測試(Chi-square和Phi相關(guān))在大量的觀察中基本上得出相同的結(jié)果,因?yàn)橐粋€是基于正態(tài)分布的,另一個是基于t分布的。
2.5 多重共線性的雙變量分析
該模型的真正問題在于共線性現(xiàn)象。共線性關(guān)系發(fā)生在兩個預(yù)測因子高度相關(guān)的情況下。我們需要檢查這種特性,然后繼續(xù)建立對數(shù)回歸模型。
根據(jù)Goodman和Kruskal's tau圖,我們不應(yīng)該擔(dān)心共線性。但是,有序變量的教育變量呢?Cramer's V檢驗(yàn)顯示,其強(qiáng)度不大。
#??教育與其他分類變量的Chi?square獨(dú)立性測試??
chisq.test(table(education,variables[,x]))$p.value?)
#將教育變量重新定位到數(shù)據(jù)集的第一個變量上?????????assocstats(x?=?table(dataset_cat_variables[,1],?dataset_$cramer?)?)
沒有一個變量顯示與教育有很強(qiáng)的關(guān)聯(lián)。Cramer's V的最高值是0.145,這在教育和性別之間是相當(dāng)弱的。
但是諸如currentSmoker和cigsPerDay這樣的變量呢?很明顯,其中一個是可以預(yù)測的。有一個數(shù)字變量和一個分類變量,我們可以把數(shù)字變量分成幾個類別,然后使用Goodman和Kruskal's tau。GroupNumeric()函數(shù)可以幫助將定量變量轉(zhuǎn)換成定性變量,然而,基于對數(shù)據(jù)的主觀理解,以及之前看到的cigsPerDay的多模態(tài)分布,在這里使用cut()函數(shù)很容易。
現(xiàn)在讓我們檢查一下GKtau的數(shù)值
class_list?<-?lapply(X?=?1:ncol(dataset_2),?function(x)?class(dataset_2[,x]))
t?<-?sapply(X?=?names(class_list)?,?FUN?=?function(x)?TRUE?%in%?(?class_list[x]?%in%?c("factor","logical"))?)
dataset_cat_variables_2?<-?subset(x?=?dataset_2,?select?=?t?)plot(dataset_2)
從矩陣圖上的tau值及其背景形狀,我們可以看到cigsPerDay可以完全解釋currentSmoker的變異性。這并不奇怪,因?yàn)槿绻覀冎酪粋€人每天抽多少支煙就可以斷言我們知道一個人是否是吸煙者!
第二個關(guān)聯(lián)是cigsPerDay與男性的關(guān)系,但它并不強(qiáng)烈。因此,前者可以解釋后者的較小的變化性。
在下一個數(shù)據(jù)集中,我把所有定量變量轉(zhuǎn)換成定性/分類變量?,F(xiàn)在我們可以有一個全面的矩陣,盡管由于轉(zhuǎn)換,一些信息會丟失。
dataset_3$totChol?<-?GroupNumeric(x?=?dataset$totChol?,?n?=?5?)
我們可以看到,sysBP和diaBP可以預(yù)測prevalentHyp,但不是很強(qiáng)。(0.5左右)。因此我們可以在模型中保留prevalentHyp。第二點(diǎn)是關(guān)于GK tau的輸出。
3.預(yù)測模型:Logistic回歸和RandomForest
現(xiàn)在是評估模型實(shí)例的時候了。在這里,我們把邏輯回歸稱為模型。
我們有兩個實(shí)例。
一個包括所有原始變量的模型實(shí)例,特別是cigsPerday和currentSmoker變量
一個包括所有原始變量的模型實(shí)例,除了currentSmoker,cigsPerday被轉(zhuǎn)換為一個因子變量
為了評估模型實(shí)例,我們可以使用數(shù)學(xué)調(diào)整訓(xùn)練誤差率的方法,如AIC。另一種方法是使用驗(yàn)證數(shù)據(jù)集,根據(jù)模型在這個數(shù)據(jù)集上的表現(xiàn)來評估模型。在后一種方法中,我選擇使用K-fold Cross-Validation(CV)技術(shù),更具體地說是5-fold CV。在這里,還有其他一些技術(shù),如留一法交叉驗(yàn)證。
3.1 兩個Logistic回歸模型實(shí)例
#?因?yàn)橄乱徊降腸v.glm()不能處理缺失值。#?我只保留模型中的完整案例。dataset_1?<-?dataset[complete.cases(dataset),]?
glm(TenYearCHD?~?.?,?family?=?"binomial")
這個模型是基于原始數(shù)據(jù)集的。有缺失值的記錄被從數(shù)據(jù)集中省略,模型顯示變量男性、年齡、cigsPerDay、totChol、sysBP和葡萄糖是顯著的,而prevalentHyp在某種程度上是顯著的。
?glm(formula?=?TenYearCHD?~?.?,?family?=?"binomial")
?
在第二個模型實(shí)例中,重要變量與前一個模型實(shí)例相同。
一個非常重要的問題是,如何衡量這兩個模型實(shí)例的性能以及如何比較它們?有各種方法來衡量性能,但我在這里選擇了5折交叉驗(yàn)證法。
為了進(jìn)行交叉驗(yàn)證和評估模型實(shí)例,我們需要一個成本函數(shù)。boot軟件包推薦的一個函數(shù),是一個簡單的函數(shù),它可以根據(jù)一個閾值返回錯誤分類的平均數(shù)。閾值默認(rèn)設(shè)置為0.5,這意味著任何觀察到的超過50%的CHD機(jī)會都被標(biāo)記為有持續(xù)疾病的TRUE病例。從醫(yī)學(xué)的角度來看,我把閾值降低到0.4,這樣即使是有40%機(jī)會得心臟病的病例,也會被標(biāo)記為接受進(jìn)一步的醫(yī)療關(guān)注。降低閾值,增加了假陽性率,從而增加了醫(yī)療費(fèi)用,但減少了假陰性率,挽救了生命。我們可以使用敏感度或特異性作為成本函數(shù)。此外,也可以使用cvAUC軟件包將曲線下面積(AUC)與CV結(jié)合起來。
3.2 模型實(shí)例的交叉驗(yàn)證評估
model1_cv_delta?<-?cv.glm(??model1,?cost?=?cost,?K?=?5)$delta[1]
kable(data.frame("model1"?=?model1_cv_delta?,
kable(
????????????????caption?=?"CV-Accuracy",?digits?=?4)
我們可以看到,兩個模型非常相似,然而,模型2顯示出輕微的優(yōu)勢。準(zhǔn)確率確實(shí)相當(dāng)高。但是,讓我們看看我們是否可以通過刪除一些變量來改進(jìn)model1。
3.3 通過變量選擇改進(jìn)模型
我們看一下model1的總結(jié)。
summary(model1)
到現(xiàn)在為止,我們一直假設(shè)所有的變量都必須包含在模型中,除非是共線性的情況?,F(xiàn)在,我們被允許通過刪除不重要的變量。這里有幾種方法,如前向選擇和后向選擇。
例如,后向選擇法是基于不顯著變量的P值。淘汰繼續(xù)進(jìn)行,直到AIC顯示沒有進(jìn)一步改善。還有stats::step()和bestglm::bestglm()函數(shù)來自動進(jìn)行變量選擇過程。后者的軟件包及其主要函數(shù)有許多選擇信息標(biāo)準(zhǔn)的選項(xiàng),如AIC、BIC、LOOCV和CV,而前者的逐步算法是基于AIC的。
bestglm(Xy?=?dataset_1?,?family?=?binomial?,?IC?=?"BIC")
step(object?=?model1?)
現(xiàn)在讓我們來看看這兩個模型和它們的交叉驗(yàn)證誤差。
bestglm_bic_model
基于BIC的bestglm::bestglm()將模型變量減少到5個:男性、年齡、cigsPerDay、sysBP和葡萄糖。所有的變量都是非常顯著的,正如預(yù)期的那樣。
summary(step_aic_model)
基于AIC的step()函數(shù)將模型變量減少到8個:男性、年齡、cigsPerDay,prevalentStroke、prevalentHyp、totChol、sysBP和glucose。值得注意的是,通過step()找到的最佳模型實(shí)例具有不顯著的變量。
glm_cv_error?<-?cv.glm(
?????????????????????????????????glmfit?=?glm(formula?
??????????????????????????????????????????????family?=?binomial,?data?=?dataset_1),
step_cv_error?<-?cv.glm(glmfit?=?step_aic_model,?cost?=?cost,?K?=?5)$delta[1]
kable(bestglm_model_cv_error?,
????????????????step_model_cv_error?)
????????)
交叉驗(yàn)證誤分類誤差
kable(data.frame("bestglm()?bic?model"?
?????????????????"step()?aic?model"
交叉驗(yàn)證-準(zhǔn)確度

AIC方法和BIC方法都能產(chǎn)生相同的準(zhǔn)確性。該選擇哪種方法呢?我寧愿選擇AIC,因?yàn)樵撃P蛯?shí)例有更多的預(yù)測因素,因此更有洞察力。然而,選擇BIC模型實(shí)例也是合理的,因?yàn)樗喢鳌Ecmodel1的準(zhǔn)確度相比,我們通過變量選擇在準(zhǔn)確度上有0.8475-0.842=0.00550.8475-0.842=0.0055的提高。然而,我們失去了關(guān)于其他預(yù)測因子和因變量關(guān)系的信息。
3.4 RandomForest模型
到目前為止,我只做了邏輯回歸模型。有更多的模型可以用來為當(dāng)前的問題建模,而RandomForest是一個受歡迎的模型。讓我們試一試,并將結(jié)果與之前的模型進(jìn)行比較。
#----?差是每個RF模型實(shí)例的CV輸出的錯誤分類率#----?每個選定的樹的CV錯誤分類率的最終結(jié)果被繪制出來?#?對于不同數(shù)量的樹,我們計算CV誤差。for?(n?in?seq(50,1000,50))?????
????????for?(k?in?1:5)?
?????????????????????rf_dataset_train?<-?dataset_1[fold_seq?!=?k?,]
?????????????????????rf_dataset_test?<-?dataset_1[fold_seq?==?k?,?]
?????????????????????rf_model?<-?randomForest(?formula,
kable(rf_df[sort(x?=?rf_df[,2])

#-----?誤差基于RandomForest?OOB,即RandomForest輸出的混淆矩陣for?(n?in?seq(50,1000,50))?{
????????counter?<-?counter?+?1?
????????????????rf_model?<-?randomForest(?formula?ntree?=?n,?x?=
????????
}
ggplot()?+?
????????geom_point(data?=?rf_df?,?aes(x?=?ntree?,?y?=?accuracy)

在這里,我同時使用了CV和out-of-bag(OOB)來評估隨機(jī)森林性能。
我們可以看到,在50到1000棵樹的范圍內(nèi),RandomForest模型的最高精度可以通過設(shè)置CV方法的樹數(shù)等于400來獲得。圖中的紅線顯示了我們從邏輯回歸模型實(shí)例中得到的最佳CV精度。由于OOB的最高準(zhǔn)確率高于CV的最高準(zhǔn)確率,所以我選擇了CV的準(zhǔn)確率,使其更加謹(jǐn)慎。ntree=400的CVaccuracy=0.8486CVaccuracy=0.8486,比最好的邏輯回歸模型差0.00020.0002! 然而,如果我們考慮OOB的準(zhǔn)確性,那么RandomForest模型比最佳邏輯回歸模型好0.00120.0012。
在RF中,模型的準(zhǔn)確性有所提高,但代價是失去了可解釋性。RF是一個黑箱,我們無法解釋預(yù)測因子和因變量之間的關(guān)系。
3.5 模型對個人數(shù)據(jù)如何預(yù)測?
這里為了完成這個報告,我想在一個新的數(shù)據(jù)集上增加一個預(yù)測部分。該數(shù)據(jù)集只有一條記錄,其中包括我自己的個人數(shù)據(jù)。換句話說,我已經(jīng)創(chuàng)建了一個模型,我想知道它是否預(yù)測了我的CHD。
>?pred_data$年齡?<-?31>?pred_data$教育?<-?factor(4,?levels?=?c(1,2,3,4))?>?pred_data$當(dāng)前吸煙者?<-?FALSE?>?pred_data$每日吸煙量?<-?0?>?pred_data$抗高血壓藥物?<-?FALSE>?pred_data$流行性中風(fēng)?<-?FALSE?>?pred_data$流行性高血壓?<-?FALSE
邏輯回歸模型的預(yù)測輸出。
glm_BIC_opt?<-?glm(data?=?dataset_1?,?formula?,family?=?binomial?)
predict(glm_BIC_opt,?newdata?=?pred_data)

隨機(jī)森林預(yù)測。
rf_model?<-?randomForest(?formula?=?.?,
predict(rf_model,?pred_data)

因此,現(xiàn)在看來,我沒有風(fēng)險! 然而,正如我之前提到的,這些模型是為了教育和機(jī)器學(xué)習(xí)的實(shí)踐,而不是為了醫(yī)學(xué)預(yù)測!所以,我認(rèn)為這些模型是有價值的。
4.最終模型探索
讓我們最后看一下這個模型
dataset_3?<-?dataset_2[complete.cases(dataset_2),]dataset_3_GK?<-?plot(dataset_3_GK)

ggpplot(data?=?dataset?,?text.angle?=?0,label.size?=2?,?order?=?0??)?+
????????scale_colour_manual(values?=?color)+
????????scale_fill_manual(values?=?color)

左右滑動查看更多

01

02

03

04

結(jié)果大多符合預(yù)期。根據(jù)GKtau值,預(yù)測因子之間的關(guān)聯(lián)最小。這正是我們想要的,以避免共線性現(xiàn)象。
然而,平行坐標(biāo)仍然顯示了一些有趣的點(diǎn)。例如,年齡組與 "十年健康發(fā)展 "結(jié)果之間的關(guān)聯(lián)很有意思。較低的年齡組在TenYearCHD==TRUE中的參與度很低,這意味著年齡與該疾病有正相關(guān)。另一方面,與男性相比,女性(男性==FALSE)在0支煙和[1,20]支煙組的貢獻(xiàn)更大。換句話說,男性傾向于抽更多的煙,而且是重度吸煙者。
桑吉圖可以產(chǎn)生更好的洞察力,因?yàn)槲覀兛梢匝刂鴺?biāo)軸觀察樣本。
5.結(jié)論
在這項(xiàng)研究中,為了建立預(yù)測模型,使用了包括4240個觀測值和16個變量的心臟研究的數(shù)據(jù)集。這些模型旨在預(yù)測十年后的冠心?。–HD)。
在對數(shù)據(jù)集進(jìn)行探索后,利用邏輯回歸和隨機(jī)森林模型來建立模型。使用K-Fold Cross-Validation對模型進(jìn)行了評估。
為了擴(kuò)展這項(xiàng)研究,可以使用進(jìn)一步的分類方法,如支持向量機(jī)(SVM)、梯度提升(GB)、神經(jīng)網(wǎng)絡(luò)模型、K-近鄰算法,甚至決策樹。

點(diǎn)擊文末?“閱讀原文”
獲取全文完整代碼資料。
本文選自《R語言隨機(jī)森林RandomForest、邏輯回歸Logisitc預(yù)測心臟病數(shù)據(jù)和可視化分析》。

點(diǎn)擊標(biāo)題查閱往期內(nèi)容
數(shù)據(jù)分享|R語言邏輯回歸、線性判別分析LDA、GAM、MARS、KNN、QDA、決策樹、隨機(jī)森林、SVM分類葡萄酒交叉驗(yàn)證ROC
MATLAB隨機(jī)森林優(yōu)化貝葉斯預(yù)測分析汽車燃油經(jīng)濟(jì)性
R語言用Rcpp加速M(fèi)etropolis-Hastings抽樣估計貝葉斯邏輯回歸模型的參數(shù)
R語言邏輯回歸、Naive Bayes貝葉斯、決策樹、隨機(jī)森林算法預(yù)測心臟病
R語言中貝葉斯網(wǎng)絡(luò)(BN)、動態(tài)貝葉斯網(wǎng)絡(luò)、線性模型分析錯頜畸形數(shù)據(jù)
R語言中的block Gibbs吉布斯采樣貝葉斯多元線性回歸
Python貝葉斯回歸分析住房負(fù)擔(dān)能力數(shù)據(jù)集
R語言實(shí)現(xiàn)貝葉斯分位數(shù)回歸、lasso和自適應(yīng)lasso貝葉斯分位數(shù)回歸分析
Python用PyMC3實(shí)現(xiàn)貝葉斯線性回歸模型
R語言用WinBUGS 軟件對學(xué)術(shù)能力測驗(yàn)建立層次(分層)貝葉斯模型
R語言Gibbs抽樣的貝葉斯簡單線性回歸仿真分析
R語言和STAN,JAGS:用RSTAN,RJAG建立貝葉斯多元線性回歸預(yù)測選舉數(shù)據(jù)
R語言基于copula的貝葉斯分層混合模型的診斷準(zhǔn)確性研究
R語言貝葉斯線性回歸和多元線性回歸構(gòu)建工資預(yù)測模型
R語言貝葉斯推斷與MCMC:實(shí)現(xiàn)Metropolis-Hastings 采樣算法示例
R語言stan進(jìn)行基于貝葉斯推斷的回歸模型
R語言中RStan貝葉斯層次模型分析示例
R語言使用Metropolis-Hastings采樣算法自適應(yīng)貝葉斯估計與可視化
R語言隨機(jī)搜索變量選擇SSVS估計貝葉斯向量自回歸(BVAR)模型
WinBUGS對多元隨機(jī)波動率模型:貝葉斯估計與模型比較
R語言實(shí)現(xiàn)MCMC中的Metropolis–Hastings算法與吉布斯采樣
R語言貝葉斯推斷與MCMC:實(shí)現(xiàn)Metropolis-Hastings 采樣算法示例
R語言使用Metropolis-Hastings采樣算法自適應(yīng)貝葉斯估計與可視化
視頻:R語言中的Stan概率編程MCMC采樣的貝葉斯模型
R語言MCMC:Metropolis-Hastings采樣用于回歸的貝葉斯估計R語言用lme4多層次(混合效應(yīng))廣義線性模型(GLM),邏輯回歸分析教育留級調(diào)查數(shù)據(jù)
R語言隨機(jī)森林RandomForest、邏輯回歸Logisitc預(yù)測心臟病數(shù)據(jù)和可視化分析
R語言基于Bagging分類的邏輯回歸(Logistic Regression)、決策樹、森林分析心臟病患者
R語言用主成分PCA、?邏輯回歸、決策樹、隨機(jī)森林分析心臟病數(shù)據(jù)并高維可視化