2
はなぜe1071はNaive Bayesクラシファイア予測のためのNAsを私に与えますか?
library(e1071)
train.x <- data.frame(
B=c(0,1,0),
C=c(0,0,0),
D=c(0,0,1),
Z=c(1,0,0)
)
classifier <- naiveBayes(x=train.x, y=factor(c(TRUE, TRUE, FALSE)), laplace=1) # use laplace (i.e. alpha) of nearly 0
predict(classifier, train.x, type="raw")
FALSE TRUE
[1,] NA NA
[2,] NA NA
[3,] NA NA
に失敗し、少なくとも2 TRUE と 2 FALSEケースがある場合にのみ機能しているかのように
train.x <- data.frame(
B=c(0,1,0,1),
C=c(0,0,0,1),
D=c(0,0,1,1),
Z=c(1,0,0,1)
)
classifier <- naiveBayes(x=train.x, y=factor(c(TRUE, TRUE, FALSE, FALSE)), laplace=1) # use laplace (i.e. alpha) of nearly 0
predict(classifier, train.x, type="raw")
FALSE TRUE
[1,] 0.000000002761 0.999999997239
[2,] 0.000000002761 0.999999997239
[3,] 0.997729292055 0.002270707945
[4,] 0.999999994295 0.000000005705
はそうWORKS。
私の推測です:最初のケースでは、#独立変数>#訓練の例と関係があるかもしれません。 –