How can I use "datasample" to get multiple samples without a loop?

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.

 Akzeptierte Antwort

MathWorks Support Team
MathWorks Support Team am 24 Jan. 2025
Bearbeitet: MathWorks Support Team am 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:

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2019b

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by