Вы можете динамически обращаться ко всем другим столбцам с помощью .
.
myFormula <- cyl ~ .
naiveBayes(myFormula, data = mtcars)
Call:
naiveBayes.default(x = X, y = Y, laplace = laplace)
A-priori probabilities:
Y
4 6 8
0.34375 0.21875 0.43750
Conditional probabilities:
mpg
Y [,1] [,2]
4 26.66364 4.509828
6 19.74286 1.453567
8 15.10000 2.560048
disp
Y [,1] [,2]
4 105.1364 26.87159
6 183.3143 41.56246
8 353.1000 67.77132
Если вам нужен класс dymanic, вы можете использовать substitute
формулу и eval
, чтобы оценить ее в вызове функции naiveBayes
.
dynamicNB <- function(data, class) {
myFormula <- substitute(class ~ .)
naiveBayes(eval(myFormula), data = data)
}
dynamicNB(class = mpg, data = mtcars)