Extracting n elemnts of an array
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Nikolas Spiliopoulos
il 31 Gen 2017
Risposto: John D'Errico
il 31 Gen 2017
Hi,
II have an array with dimensions [5568X1] and I want to extract every 48 values and put it in a different array (so 5568/48=116 arrays).
I have already created a cell(116,1), and probably i need an k=1:116
do you know how can I do this?
thanks
Nikolas
0 Commenti
Risposta accettata
John D'Errico
il 31 Gen 2017
Why do you think that you need to create 116 different arrays? This is a terrible idea, and one every novice programmer thinks they need to do. You don't even need to create a cell array of vectors. Instead, learn to use an array, instead of many vectors. Then a simple call to reshape will suffice.
b = rand(5568,1); % just something random to show you how it works
a = reshape(b,48,116);
size(a)
ans =
48 116
So now you can access any one of those vectors as simply an index operation. So if you want to use the third such vector, do this:
a(:,3)
There is absolutely NO need to use a cell array here, although it is something of value in many circumstances.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!