我無法找到在我嘗試生成的迴歸隨機森林模型上執行交叉驗證的方法。如何在R中執行隨機森林/交叉驗證
所以我有一個數據集包含1664個解釋變量(不同的化學性質),一個響應變量(保留時間)。我試圖建立一個迴歸隨機森林模型,以便能夠根據其保留時間來預測某些物質的化學性質。
ID RT (seconds) 1_MW 2_AMW 3_Sv 4_Se
4281 38 145.29 5.01 14.76 28.37
4952 40 132.19 6.29 11 21.28
4823 41 176.21 7.34 12.9 24.92
3840 41 174.24 6.7 13.99 26.48
3665 42 240.34 9.24 15.2 27.08
3591 42 161.23 6.2 13.71 26.27
3659 42 146.22 6.09 12.6 24.16
這是我有的表格的一個例子。我想基本上將RT與1_MW等相關(最多1664個變量),所以我可以找到哪些變量重要,哪些不重要。
我做的: -
r = randomForest(RT..seconds.~., data = cadets, importance =TRUE, do.trace = 100)
varImpPlot(r)
告訴我哪些變量什麼是重要的,而不是,這是偉大的。但是,我希望能夠對數據集進行分區,以便我可以對其執行交叉驗證。我發現了一個在線教程,解釋瞭如何做到這一點,但對於分類模型而不是迴歸。
我明白你做的事: -
k = 10
n = floor(nrow(cadets)/k)
i = 1
s1 = ((i-1) * n+1)
s2 = (i * n)
subset = s1:s2
來定義你要多少交叉褶皺做的,每個折的大小,並設置子集的起點和終點值。但是,我不知道在這裏做什麼。我被告知要循環但我真的不知道如何做到這一點。我也不知道如何將驗證集合和測試集合繪製到同一個圖表上來描述準確性/錯誤的水平。
如果你可以請幫助我,我會永遠感激,謝謝!
如果您仍然對R中的CV感興趣,至少有一對:[caret](http://cran.r-project.org/web/packages/caret/caret.pdf)和[cvTools ](http://cran.r-project.org/web/packages/cvTools/cvTools.pdf) – topchef