使用R中的Naive Bayes模型打印条件概率

我使用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%等等。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注