Matlab Bootstrap 未完成重采样

use*_*890 2 matlab statistics-bootstrap

我想在 Matlab 中执行引导程序。我有 100 个原始数据点,我希望引导程序的每次迭代只选择 57 个随机替换点。我该如何实现?

我似乎无法在 Matlab 函数中找到此功能bootstrp

问候,

Lui*_*ndo 5

n用替换从向量中随机选择点:用于randi生成(可能重复的)索引:

vector = (1:100).^2; %// example data
n = 57;
ind = randi(numel(vector),1,n); %// n random integers between 1 and numel(vector)
sample = vector(ind);
Run Code Online (Sandbox Code Playgroud)

直接用bootstrp: letfun表示你要传递给的函数bootstrp。您只需要选择每个 100 值样本的前 57 个值:

vector = (1:100).^2; %// example data
n = 57;
nboot = 10;
bootstrp(nboot, @(x) fun(x(1:57)), vector)
Run Code Online (Sandbox Code Playgroud)