Last update: 05-03-2023
# Installation
install.packages("devtools")
::install_github("leapigufpb/FuzzyClass") devtools
# package import
library(FuzzyClass)
library(FuzzyClass)
library(caret)
#' ---------------------------------------------
#' The following shows how the functions are used:
#' --------------
#' Reading a database:
#'
#' Actual training data:
data(VirtualRealityData)
<- as.data.frame(VirtualRealityData)
VirtualRealityData
# Splitting into Training and Testing
<- caTools::sample.split(t(VirtualRealityData[,1]), SplitRatio = 0.7)
split <- subset(VirtualRealityData, split == "TRUE")
Train <- subset(VirtualRealityData, split == "FALSE")
Test # ----------------
= Test[,-4] test
# --------------------------------------------------
# Fuzzy Gaussian Naive Bayes with Fuzzy Parameters
<- GauNBFuzzyParam(train = Train[,-4],
fit_FGNB cl = Train[,4], metd = 2, cores = 1)
print(fit_FGNB)
#>
#> Fuzzy Gaussian Naive Bayes Classifier for Discrete Predictors
#>
#> Variables:
#> [1] "V1" "V2" "V3"
#> Class:
#> [1] "1" "2" "3"
<- predict(fit_FGNB, test)
saida confusionMatrix(factor(Test[,4]), saida)
#> Confusion Matrix and Statistics
#>
#> Reference
#> Prediction 1 2 3
#> 1 62 6 0
#> 2 6 38 13
#> 3 0 7 48
#>
#> Overall Statistics
#>
#> Accuracy : 0.8222
#> 95% CI : (0.7584, 0.8751)
#> No Information Rate : 0.3778
#> P-Value [Acc > NIR] : < 2.2e-16
#>
#> Kappa : 0.7323
#>
#> Mcnemar's Test P-Value : NA
#>
#> Statistics by Class:
#>
#> Class: 1 Class: 2 Class: 3
#> Sensitivity 0.9118 0.7451 0.7869
#> Specificity 0.9464 0.8527 0.9412
#> Pos Pred Value 0.9118 0.6667 0.8727
#> Neg Pred Value 0.9464 0.8943 0.8960
#> Prevalence 0.3778 0.2833 0.3389
#> Detection Rate 0.3444 0.2111 0.2667
#> Detection Prevalence 0.3778 0.3167 0.3056
#> Balanced Accuracy 0.9291 0.7989 0.8640
<- predict(fit_FGNB, test, type = "matrix") saidaMatrix
# --------------------------------------------------
# head view
|> head()
saida #> [1] 1 1 1 1 1 1
#> Levels: 1 2 3
|> head()
saidaMatrix #> 1 2 3
#> [1,] 0.5190477 0.381592934 9.935940e-02
#> [2,] 0.9938309 0.006160007 9.063041e-06
#> [3,] 0.9361335 0.063651768 2.147316e-04
#> [4,] 0.9938859 0.006110688 3.403995e-06
#> [5,] 0.8330550 0.156143228 1.080176e-02
#> [6,] 0.4868158 0.481737673 3.144651e-02