Clear Filters
Clear Filters

How do I change my scalars to fit my normpdf?

6 views (last 30 days)
Here's my code (I am not using the normpdf function because the problem specifically asks to write out the whole equation to get the answer)
e = 2.7183;
xq = 0:100;
mu = [25, 50];
sigma = [5, 10];
figure(3)
for ii2 = 1:length(xq)
ndist=(1/(sigma*sqrt(2*pi)))*power(e,-(1/2)*(power(xq-mu)/sigma),2)
subplot (2,1,ii2)
bar(ndist)
end
  2 Comments
Torsten
Torsten on 9 Sep 2024
Please explain what you are trying to do. I can't deduce it from your errorneous code.
Leyton
Leyton on 9 Sep 2024
I am trying to plot 2 normal distributions using the parameters above the for loop

Sign in to comment.

Accepted Answer

Torsten
Torsten on 9 Sep 2024
Edited: Torsten on 9 Sep 2024
xq = 0:100;
mu = [25, 50].';
sigma = [5, 10].';
ndist = 1./(sigma*sqrt(2*pi)).*exp(-((xq-mu)./sigma).^2);
plot(xq,ndist)
grid on
  2 Comments
Leyton
Leyton on 9 Sep 2024
Thank you so much! This is much cleaner than what I typed for sure
Torsten
Torsten on 9 Sep 2024
Edited: Torsten on 9 Sep 2024
Note that "mu" and "sigma" are column vectors and "xq" is a row vector.
Thus "pdist" will come out as a matrix:
xq = [1 2 3];
mu = [3 4].';
sigma = [2 9].';
(xq - mu)./sigma
ans = 2x3
-1.0000 -0.5000 0 -0.3333 -0.2222 -0.1111
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
This is already "advanced" MATLAB. Alternatively, you should try to produce "pdist" using a loop.

Sign in to comment.

More Answers (0)

Categories

Find more on Introduction to Installation and Licensing in Help Center and File Exchange

Tags

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!