data generation using bootstrap method
6 views (last 30 days)
Show older comments
Hi all,
I have a data series like 'a':
a= [50;46;28;31;38;49;52;33;38;32;61;90;42;42;45;29;36;30;27;20;31;30;34;23;];
I want to genarate more data which originated from 'a' using bootstrap method.
How can I write this program?
Thanks in advance.
0 Comments
Answers (1)
José-Luis
on 5 Dec 2012
Edited: José-Luis
on 5 Dec 2012
Bootstrapping consists in selecting a subset of the data. That sounds like a job for randperm()
a = randi(60,1,50);
subsetSize = numel(a) - 1; %How many values in your bootstrap
numSamples = 10; %number of simulations
your_data = ones(numSamples,subsetSize); %one sample per row
for ii = 1:numSamples
your_data(ii,:) = a(randperm(subsetSize));
end
Note that you could also generate all possible subsets:
allSets = nchoosek(1:numel(a),subsetSize);
your_data = a(allSets);
And select your data from it, if you want to avoid repeated values.
1 Comment
peach_R
on 9 Nov 2024 at 7:09
I wonder why it starts from a = randi(60,1,50) as I think that 60 means integer from 1 to 60 not from elements in 'a'.
See Also
Categories
Find more on Predictive Maintenance Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!