FuzzyNaiveBayes
Fuzzy Naive Bayes
Arguments
- train
matrix or data frame of training set cases
- cl
factor of true classifications of training set
- fuzzy
boolean variable to use the membership function
- m
is M/N, where M is the number of classes and N is the number of train lines
- Pi
is 1/M, where M is the number of classes
References
Moraes RM, Machado LS (2009). “Another approach for fuzzy naive bayes applied on online training assessment in virtual reality simulators.” In Proceedings of Safety Health and Environmental World Congress, 62--66.
Examples
# Example Fuzzy with Discrete Features
set.seed(1) # determining a seed
data(HouseVotes84)
# Splitting into Training and Testing
split <- caTools::sample.split(t(HouseVotes84[, 1]), SplitRatio = 0.7)
Train <- subset(HouseVotes84, split == "TRUE")
Test <- subset(HouseVotes84, split == "FALSE")
# ----------------
# matrix or data frame of test set cases.
# A vector will be interpreted as a row vector for a single case.
test <- Test[, -1]
fit_FNB <- FuzzyNaiveBayes(
train = Train[, -1],
cl = Train[, 1]
)
pred_FNB <- predict(fit_FNB, test)
head(pred_FNB)
#> [1] republican democrat republican republican republican democrat
#> Levels: democrat republican
head(Test[, 1])
#> [1] democrat democrat democrat republican republican democrat
#> Levels: democrat republican
# Example Fuzzy with Continuous Features
set.seed(1) # determining a seed
data(iris)
# Splitting into Training and Testing
split <- caTools::sample.split(t(iris[, 1]), SplitRatio = 0.7)
Train <- subset(iris, split == "TRUE")
Test <- subset(iris, split == "FALSE")
# ----------------
# matrix or data frame of test set cases.
# A vector will be interpreted as a row vector for a single case.
test <- Test[, -5]
fit_FNB <- FuzzyNaiveBayes(
train = Train[, -5],
cl = Train[, 5]
)
pred_FNB <- predict(fit_FNB, test)
head(pred_FNB)
#> [1] setosa setosa setosa setosa setosa setosa
#> Levels: setosa versicolor virginica
head(Test[, 5])
#> [1] setosa setosa setosa setosa setosa setosa
#> Levels: setosa versicolor virginica