在CDF(使用MATLAB)中,我如何找到任何选择的累积分布(Y)的相应数据值(X) ?请参考粘贴的代码(我会发布一个图像,但我需要一个"10声誉")。我如何才能找到对应于0.2甚至0.5等累积概率值的数据点(X),而不是"盯着"绘图?请建议。谢谢你。
X = randn(1,500);
u = mean(X);
s = std(X);
pd = makedist('Normal','mu',u,'sigma',s);
x = min(X):.1:max(X);
cdf_normal = cdf(pd,x);
plot(x,cdf_normal,'LineWidth',4)
我不知道makedist
是什么,但是Matlab有一个强大的工具叫做find
,它会找到你需要的东西。
在你的情况下,如果要我猜的话,你可以做
x(find(cdf_normal >= 0.2,1))
获取所需的数据点x。
基本上,它在cdf_normal中搜索第一次出现的正确语句,返回索引,然后显示与该索引对应的值if x。