我想在 Matlab 中执行引导程序。我有 100 个原始数据点,我希望引导程序的每次迭代都随机选择 57 个替换点。我该如何完成它?
我似乎在 Matlab 函数中找不到这个功能bootstrp
。
问候,
我想在 Matlab 中执行引导程序。我有 100 个原始数据点,我希望引导程序的每次迭代都随机选择 57 个替换点。我该如何完成它?
我似乎在 Matlab 函数中找不到这个功能bootstrp
。
问候,
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);
直接用bootstrp
: letfun
表示你将传递给的函数bootstrp
。您只需要选择每个 100 值样本的前 57 个值:
vector = (1:100).^2; %// example data
n = 57;
nboot = 10;
bootstrp(nboot, @(x) fun(x(1:57)), vector)