This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Class: NaiveBayes

Compute posterior probability of each class for test data


post = posterior(nb,test)
[post,cpre] = posterior(nb,test)
[post,cpre,logp] = posterior(nb,test)
[...] = posterior(..., 'HandleMissing',val)


post = posterior(nb,test) returns the posterior probability of the observations in test according to the NaiveBayes object nb. test is a N-by-nb.ndims matrix, where N is the number of observations in the test data. Rows of test correspond to points, columns of test correspond to features. post is a N-by-nb.nclasses matrix containing the posterior probability of each observation for each class. post(i,j) is the posterior probability of point I belonging to class j. Classes are ordered the same as nb.clevels, i.e., column j of post corresponds to the jth class in nb.clevels. The posterior probabilities corresponding to any empty classes are NaN.

[post,cpre] = posterior(nb,test) returns cpre, an N-by-1 vector, containing the class to which each row of test has been assigned. cpre has the same type as nb.CLevels.

[post,cpre,logp] = posterior(nb,test) returns logp, an N-by-1 vector containing estimates of the log of the probability density function (PDF). logp(i) is the log of the PDF of point i. The PDF value of point i is the sum of Prob(point I | class J) * Pr{class J} taken over all classes.

[...] = posterior(..., 'HandleMissing',val) specifies how posterior treats NaN (missing values). val can be one of the following:

'off' (default) Observations with NaN in any of the columns are not classified into any class. The corresponding rows in post and logp are NaN. The corresponding rows in cpre are NaN (if obj.clevels is numeric or logical), empty character vectors (if obj.clevels is character array or cell array of character vectors) or <undefined> (if obj.clevels is categorical).
'on' For observations having NaN in some (but not all) columns, post and cpre are computed using the columns with non-NaN values. Corresponding logp values are NaN.

Was this topic helpful?