我有一组经验数据(假设x=normrnd(10,3,1000,1);
),其累积分布函数如下:
我也有一组数据x1=[11,11.1,10.1]
。我想找到找到值的概率,x1
如果它们来自分布x
。如果它是一个连续的已知函数,我可以准确地评估它,但我想根据我拥有的数据来做。有什么想法吗?
手动我会在 x 轴上找到值并向上追踪到直线并穿过 F(x) 轴(见图 1)。
编辑:
size(x1)
10,0000
所以我现在已经找到了如何获取绘制 F(x) 的数据
handles=cdfplot(X);
xdata=get(handles,'XData');
ydata=get(handles,'YData');
我认为现在是在 ydatax
的间隔中 查找位置xdata
以及随后在 ydata 中查找位置的情况。
例如
for i=1:length(x)
for j=1:length(xdata)
if x(i,1)<=xdata(jj,1)
X(i)=xdata(jj,1);
end
end
end
Y=ydata(X);
Is this the most elegant way?