我是统计学的新手。我有一个判别函数:
g(x)= ln p(x | w)+ lnP(w)
我知道它有正常的分布。我知道mü和sigma变量。如何在Matlab上绘制它的pdf函数?
这是一个对话:How to draw probability density function in MatLab?但是我不想使用任何Matlab工具箱。
答案 0 :(得分:3)
mu = 0;
sigma = 1;
xs = [-5:.1:5];
ys = normpdf(xs, mu, sigma);
clf;
plot(xs, ys);
答案 1 :(得分:0)
MATLAB绘制数据向量,因此您需要制作X向量和Y向量。
如果我有一个函数,比如x ^ 2,我可能会这样做:
x = -1:.01:1; %make the x-vector
y = x.^2; %square x
plot(x,y);
你知道PDF的功能(y = exp(-x。^ 2. / sigma ^ 2)。* 1 / sqrt(2 * pi * sigma ^ 2)),所以你要做的就是make x-vector,并绘制出去!
答案 2 :(得分:0)
根据@kamaci的评论,此问题使用@Pete's answer给出了完整的答案。
为避免使用MATLAB工具箱,只需直接绘制Normal probability density function (PDF)。
mu = 12.5; % mean
sigma = 3.75; % standard deviation
fh=@(x) exp(-((x-mu).^2)./(2*(sigma^2)))*(1/sqrt(2*pi*(sigma^2))); % PDF function
X = 0:.01:25;
p = plot(X,fh(X),'b-')