How to get a random 50x14 matrix from 300x14 matrix
1 view (last 30 days)
Show older comments
Amirali AGHAMIRI
on 27 Mar 2022
Commented: Amirali AGHAMIRI
on 28 Mar 2022
Hello,
Could you please tell me how to get a random 50x14 matrix from 300x14 matrix?
Accepted Answer
Image Analyst
on 27 Mar 2022
Perhaps this, if you want all 50 rows to be adjacent to each other and not randomly chosen.
% Define matrix.
m = randi(9, 300, 14)
% Get starting and ending rows
startingRow = randi(size(m, 1)-49, 1, 1)
endingRow = startingRow + 49
% Extract a band of 50 contiguous rows
m50 = m(startingRow : endingRow, :);
3 Comments
Image Analyst
on 28 Mar 2022
So just delete the first line where I created an m. I just did that because you keep forgetting to attach your actual matrix in a .mat file with the paperclip icon.
% Get starting and ending rows
startingRow = randi(300-49, 1, 1)
endingRow = startingRow + 49
As you can see above when I ran it, it would take all rows between 207 and 256 of your original matrix and extract them to a new matrix called m50. Why do you think that will not work for your matrix?
See Also
Categories
Find more on Creating and Concatenating Matrices 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!