Someone help me to fix the problem?
1 次查看(过去 30 天)
显示 更早的评论
Hello everyone, I need to create random numbers and find the poisson distribution and its pdf and the draw the plot of it, I try to do it this code but I am doing something wrong here, can someone help me to do it?
lambda =75;
for i=1:1000
r(i) = poissrnd(lambda);
end
P = poisspdf(r,lambda);
[M,V] = poisstat(lambda);
% bar(r,P,1);
% xlabel('Observation');
% ylabel('Probability');
0 个评论
采纳的回答
Michael Soskind
2020-5-7
I think you need to use the unique function here. Something that is important to note is that the bar chart requires r to be unique values. In addition, because of that, you need to count the number of times that the counts occur. Also, because you want to plot the probability, you want to divide by the number of total occurences in the set. This is reflected in the code below:
% Generating the random dataset
lambda =75;
for i=1:1000
r(i) = poissrnd(lambda);
end
P = poisspdf(r,lambda);
[M,V] = poisstat(lambda);
counts = hist(r, unique(r)); % unique selects the number of unique elements
% hist counts the number of elements at each unique value
bar(unique(r), counts/1000) % bar chart plots the counts
% because you have 1000 elements, you divide counts by 1000 to get the probability
xlabel('Observation');
ylabel('Probability');
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!