How can I use "datasample" to get multiple samples without a loop?
13 views (last 30 days)
Show older comments
MathWorks Support Team
on 2 Jun 2020
Edited: MathWorks Support Team
on 4 Feb 2025
How can I create "n" samples of size "k" using "datasample" without needing a "for" loop?
To access detailed documentation on the "datasample" function, execute the following command in MATLAB R2020b:
>> web(fullfile(docroot, 'stats/datasample.html'))
For example, if I want to sample from a 500 element vector in samples of 20, but do that 30 times, I've got to create a loop from i=1:30 with "datasample" inside that loop.
Accepted Answer
MathWorks Support Team
on 24 Jan 2025
Edited: MathWorks Support Team
on 4 Feb 2025
To create multiple samples of a certain size, you can use the "reshape" command after generating all the values needed. For example:
>> x = rand([500,1]); >> sampleSize = 20; >> numSamples = 30; >> y = datasample(x, sampleSize * numSamples); >> z = reshape(y, [numSamples, sampleSize]);
To access the documentation for "reshape," execute the following command in MATLAB R2020b:
>> web(fullfile(docroot, 'matlab/ref/reshape.html'))
Please follow the link below to search for the required information regarding the current release:
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!