Clear Filters
Clear Filters

Using pdf to find threshold

4 views (last 30 days)
FsC on 21 Jan 2023
Answered: Image Analyst on 22 Jan 2023
I am trying to determine a threshold for data that is p>0.05. The data is very positively skewed but I am unsure how to use or interpret the pdf() function to determine a threshold value. I want apply a 'Rayleigh'distribution but how do you choose the values for the input parameter B? I read the documentation but it does not give detailed explanation on how to choose these parameters. I've numeric matrix of example data. This is my code so far:
pd = fitdist(sample,'Rayleigh')
pd =
RayleighDistribution Rayleigh distribution B = 0.0844953 [0.0830468, 0.0859955]
x_values = 0:.01:.5;
y = pdf(pd,x_values);
But the next step is finding the threshold value which I am unsure how to do.
Thank you for your help!
  1 Comment
Torsten on 22 Jan 2023
I am trying to determine a threshold for data that is p>0.05.
Could you explain in more detail what you mean here ?

Sign in to comment.

Accepted Answer

Jeff Miller
Jeff Miller on 22 Jan 2023
I'm not entirely sure what you mean by "threshold", but maybe you are trying to identify the middle 95% of the distribution? If that is the case, then
>> icdf(pd,0.025)
ans =
>> icdf(pd,0.975)
ans =
tells you that scores less than 0.019013 are in the bottom 2.5% and scores greater than 0.22951 are in the top 2.5%, so the middle 95% is the range in between there. Alternatively, if you just want the bottom 95% then you would use
>> icdf(pd,0.95)
ans =
the "icdf" function returns the value X of the distribution such that the indicated proportion is less than X.
  1 Comment
FsC on 22 Jan 2023
Yes, that works perfectly! Thank you!

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 22 Jan 2023
For skewed distributions such as that, the triangle method works well. Function is attached.




Community Treasure Hunt

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

Start Hunting!