2

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

我似乎在 Matlab 函数中找不到这个功能bootstrp

问候,

4

1 回答 1

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);

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

vector = (1:100).^2; %// example data
n = 57;
nboot = 10;
bootstrp(nboot, @(x) fun(x(1:57)), vector)
于 2014-01-09T15:49:25.113 回答