How can I create n arrays of size 100 each with random integer values?

19 vues (au cours des 30 derniers jours)
N/A
N/A le 13 Déc 2019
c = cell(1,100)
for i = 1:100
c{i} = randi(100)
end
I tried doing this but it only gives 100 arrays of size 1.
I need 1-D arrays
Any other solution is gladly welcomed.
Thank you!

Réponse acceptée

Alex Mcaulley
Alex Mcaulley le 13 Déc 2019
c = cell(1,100)
for i = 1:100
c{i} = randi(100,1,100)
end
  7 commentaires
Alex Mcaulley
Alex Mcaulley le 13 Déc 2019
It is simpler with @Guillaume suggestion, creating 100x100 matrix and then, each row (or each column) is an array of 100 elements:
result = randi(50, 100)
result(1,:) %1x100 array
N/A
N/A le 13 Déc 2019
Okay Thank you!!

Connectez-vous pour commenter.

Plus de réponses (2)

Bhaskar R
Bhaskar R le 13 Déc 2019
c = cell(1,100);
for i = 1:100
c{i} = randperm(100);
end

Steven Lord
Steven Lord le 13 Déc 2019
Since all of your arrays are the same size, I would consider stacking them in one of the dimensions in which they have size 1.
A = randi([-10 10], 5, 8);
In this example A contains 5 "arrays" (the rows) of random integer values between -10 and 10, each "array" having size [1 8]. To use the third "array":
third = A(3, :)
For 2-dimensional arrays, you could stack them in the third dimension like pages in a book.
B = randi([-10 10], 3, 3, 7);
fifth = B(:, :, 5)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by