Computes the conditional a-posterior probabilities of a categorical class variable given independent predictor variables using the Bayes rule.

```
# S3 method for formula
NaiveBayes(formula, data, ..., subset, na.action = na.pass)
# S3 method for default
NaiveBayes(x, grouping, prior, usekernel = FALSE, fL = 0, ...)
```

x

a numeric matrix, or a data frame of categorical and/or numeric variables.

grouping

class vector (a factor).

formula

a formula of the form ```
class ~ x1 + x2 +
…
```

. Interactions are not allowed.

data

a data frame of predictors (categorical and/or numeric).

prior

the prior probabilities of class membership. If unspecified, the class proportions for the training set are used. If present, the probabilities should be specified in the order of the factor levels.

usekernel

if `TRUE`

a kernel density estimate (`density`

)
is used for density estimation. If `FALSE`

a normal density is estimated.

fL

Factor for Laplace correction, default factor is 0, i.e. no correction.

…

arguments passed to `density`

.

subset

for data given in a data frame, an index vector specifying the cases to be used in the training sample. (NOTE: If given, this argument must be named.)

na.action

a function to specify the action to be taken if `NA`

s are
found. The default action is not to count them for the
computation of the probability factors. An
alternative is na.omit, which leads to rejection of cases
with missing values on any required variable. (NOTE: If
given, this argument must be named.)

An object of class `"NaiveBayes"`

including components:

Class distribution for the dependent variable.

A list of tables, one for each predictor variable. For each
categorical variable a table giving, for each attribute level, the conditional
probabilities given the target class. For each numeric variable, a
table giving, for each target class, mean and standard deviation of
the (sub-)variable or a object of `class`

`density`

.

This implementation of Naive Bayes as well as this help is based on the code by
David Meyer in the package e1071 but extended for kernel estimated densities and user
specified `prior`

probabilities.
The standard naive Bayes classifier (at least this implementation)
assumes independence of the predictor
variables.

# NOT RUN { data(iris) m <- NaiveBayes(Species ~ ., data = iris) # }