在Matlab中实现Bootstrap置信区间

在Matlab中实现Bootstrap置信区间,matlab,Matlab,如果这对一些人来说是显而易见的,我道歉。然而,我已经试着让我的头脑在引导上转了几个小时,对于如此简单的事情,我真的很挣扎 我有一个很大的数据集,但是它不是正态分布的,我正试图找到置信水平,因此我转向了引导。我想将引导应用于数据集的第四列,我可以这样做 但是,我对bootci函数本身有问题 ci=bootci(10000, ..... , array; 我在实现该函数时遇到了问题,因为我不完全理解bootci函数的第二部分(表示为…)的功能 我在其他示例中看到了@mean的实现,我假设它计算每个

如果这对一些人来说是显而易见的,我道歉。然而,我已经试着让我的头脑在引导上转了几个小时,对于如此简单的事情,我真的很挣扎

我有一个很大的数据集,但是它不是正态分布的,我正试图找到置信水平,因此我转向了引导。我想将引导应用于数据集的第四列,我可以这样做

但是,我对bootci函数本身有问题

ci=bootci(10000, ..... , array;
我在实现该函数时遇到了问题,因为我不完全理解bootci函数的第二部分(表示为…)的功能

我在其他示例中看到了@mean的实现,我假设它计算每个列的平均值,并将其应用于函数

如果有人能证实我的想法或向我解释功能,我将不胜感激


我也不确定如何改变样本量,有人能给我指出正确的方向吗?

根据我对问题的理解:

ci = bootci(10000, @mean, X);
将使用从数据集
X
替换的随机抽样生成的10000个子样本,确定数据集
X
平均值的95%置信区间

函数
@mean
的第二个参数表示应用于子样本的函数是
mean
,因此用于计算平均值的置信区间。如果需要,您可以同样地传入
@std
来计算标准偏差的置信区间,或者传入任何其他适用于该问题的函数


从我在中所读到的内容来看,似乎不可能直接控制
bootci
函数所使用的子样本的大小。

你的意思是说,不是盗版?你想找出什么样的置信区间?你是对的!我不知道我是怎么搞混的,编辑了标题。好吧,首先要做的就是。忘记引导吧。描述你试图寻找的价值。例如:你是在试图找出你的分布的平均值吗?模式?中位数?一旦建立了这个模型,bootstrap的解释就容易多了。我试图找到数据集的置信区间,我已经有了一个平均值,但是它有很重的权重。我把bootstrap看作是一种寻找平均值和置信区间的精确结果的方法。所以你想找到分布的平均值,以及平均值的置信区间,对吗?好的,我可以用这个。。。这解决了我的问题,简单地用中位数替换均值,就可以得到公认的中位数ci