Matlab error, what am I doing wrong?

1 次查看(过去 30 天)
I have written the followin code on Matlab :
class1 = [0, 0; 0, 1; 2, 2; 3, 1; 3, 2; 3, 3;];
class2 = [6, 9; 8, 9; 9, 8; 9, 9; 9, 10; 8, 11;];
mu1 = mean(class1);
mu2 = mean(class2);
sigma1 = cov(class1);
sigma2 = cov(class2);
syms x y;
g1 = -0.5*([x;y]-mu1)*inv(sigma1)*([x;y]-mu1)-log(2*pi)-0.5*log(det(sigma1));
g2 = -0.5*([x;y]-mu2)*inv(sigma2)*([x;y]-mu2)-log(2*pi)-0.5*log(det(sigma2));
g = g1 - g2;
ezplot(g, [[-1,11], [-1,11]]);
and this is the error I keep getting :
??? g1 = -0.5*([x;y]-mu1)*inv(sigma1)*([x;y]-mu1)-log(2*pi)-0.5*log(det(sigma1));
|
Error: The input character is not valid in MATLAB statements or expressions.

采纳的回答

José-Luis
José-Luis 2014-8-26
The transpose character is not what you think it is:
g1 = -0.5*([x;y]-mu1')'*inv(sigma1)*([x;y]-mu1')-log(2*pi)-0.5*log(det(sigma1));
  6 个评论
Lala
Lala 2014-8-26
Ok, thank you once again, you have been very helpful.
José-Luis
José-Luis 2014-8-26
My pleasure. Please accept an answer if it helped you.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by