我使用e1071包创建了一个Naive Bayes分类器的模型。我需要以以下格式打印条件概率。
P(C=c1)=0.32 P(A1=x1|c1)=0.33 P(A1=x2|c1)=0.67 P(A2=y1|c1)=0.25 P(A2=y2|c1)=0.75P(A3=z1|c1)=0.26 P(A3=z2|c1)=0.49 P(A3=z3|c1)=0.25
当我输入模型名称时,我可以看到条件概率,但我不知道如何访问单个值并使用它以上述格式打印结果。
我是R语言的新手,不确定如何解析模型并以这种形式获取数据。如何解析模型并分离出数据?
回答:
只需打印$tables
> data(Titanic)> m <- naiveBayes(Survived ~ ., data = Titanic) > m$tables$Class ClassSurvived 1st 2nd 3rd Crew No 0.08187919 0.11208054 0.35436242 0.45167785 Yes 0.28551336 0.16596343 0.25035162 0.29817159$Sex SexSurvived Male Female No 0.91543624 0.08456376 Yes 0.51617440 0.48382560$Age AgeSurvived Child Adult No 0.03489933 0.96510067 Yes 0.08016878 0.91983122
现在你可以读取例如P(Age=Child|Survived=No) = 3%
和P(Age=Child|Survived=yes) = 8%
,P(Class=Crew|Survived=No) = 45%
等等。