I followed the written code literally but it still says there is an error in line 4 y = finitepmf(s,p,x);
Therefore, I could not have the answer
>> shipweightpmf( [2 2.5 6] )'
ans = 0.1500 0 0.1000
that is written in the second box of the example picture that it has been attached.
Any hints or details explaination are highly appreciated.
function y = shipweightpmf(x)
s = (1:8)';
p = [0.15*ones(4,1); 0.1*ones(4,1)];
y = finitepmf(s,p,x);

 Accepted Answer

shipweightpmf( [2 2.5 6] )'
ans = 1×3
0.1500 0 0.1000
function y = shipweightpmf(x)
s = (1:8)';
p = [0.15*ones(4,1); 0.1*ones(4,1)];
y = finitepmf(s,p,x);
end
function pmf=finitepmf(sx,px,x)
% finite random variable X:
% vector sx of sample space
% elements {sx(1),sx(2), ...}
% vector px of probabilities
% px(i)=P[X=sx(i)]
% Output is the vector
% pmf: pmf(i)=P[X=x(i)]
pmf=zeros(size(x(:)));
for i=1:length(x)
pmf(i)= sum(px(find(sx==x(i))));
end
end

1 Comment

VBBV
VBBV on 5 Aug 2023
Edited: VBBV on 5 Aug 2023
Use these links below for more information about that function (probability mass function)
https://in.mathworks.com/matlabcentral/answers/627263-how-to-find-probability-mass-function

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Products

Release

R2023a

Asked:

on 5 Aug 2023

Edited:

on 5 Aug 2023

Community Treasure Hunt

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

Start Hunting!