এতে অনেকগুলি বিকল্প উপলব্ধ R। দেখার জন্য একটি দুর্দান্ত জায়গা হ'ল caretপ্যাকেজ যা অন্যান্য অনেক প্যাকেজ এবং বিকল্পগুলির জন্য একটি দুর্দান্ত ইন্টারফেস সরবরাহ করে। আপনি এখানে ওয়েবসাইট একবার দেখে নিতে পারেন । সেখানে অনেকগুলি বিকল্প রয়েছে, তবে আমি একটি বর্ণনা করব।
এখানে R"এমটিকার্স" ডেটাসেটগুলি অন্তর্নির্মিত (নীচে দেখানো হয়েছে) ব্যবহার করে একটি সাধারণ ফিল্টার ব্যবহারের উদাহরণ ।
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
এখন কিছু কোড সেটআপ (প্যাকেজ লোড করা ইত্যাদি):
# setup a parallel environment
library(doParallel)
cl <- makeCluster(2) # number of cores to use
registerDoParallel(cl)
library(caret)
এবং আমরা ভেরিয়েবলগুলি নির্বাচন করতে একটি সাধারণ মডেল ফিট করতে পারি:
fit1 <- sbf(mtcars[, -1], mtcars[, 1],
sbfControl =
sbfControl(functions = rfSBF, method = "repeatedcv", repeats = 10)
)
ফলাফলগুলি দেখতে, আমরা পেয়েছি:
fit1
Selection By Filter
Outer resampling method: Cross-Validated (10 fold, repeated 10 times)
Resampling performance:
RMSE Rsquared RMSESD RsquaredSD
2.266 0.9224 0.8666 0.1523
Using the training set, 7 variables were selected:
cyl, disp, hp, wt, vs...
During resampling, the top 5 selected variables (out of a possible 9):
am (100%), cyl (100%), disp (100%), gear (100%), vs (100%)
On average, 7 variables were selected (min = 5, max = 9)
অবশেষে আমরা fit1$optVariablesফলাফলের বিরুদ্ধে বাছাই করা ভেরিয়েবলগুলি প্লট করতে পারি mpg:
library(ggplot2)
library(gridExtra)
do.call(grid.arrange,
lapply(fit1$optVariables, function(v) {
ggplot(mtcars, aes_string(x = v, y = "mpg")) +
geom_jitter()
}))
এই গ্রাফের ফলাফল: 