How to cut a vector in intervals?

9 visualizzazioni (ultimi 30 giorni)
Dada
Dada il 17 Ott 2016
Commentato: Dada il 17 Ott 2016
I need to cut a vector in a determined intervals. The size of my vector is unknown because it depends on the previous input. Lest say my vector is [2:97] and I need it to be cut in intervals of two (I previously made sure the vector can be divided by three) and all put together in a cell. The result has to be {[2 3 4],[5 6 7],[8 9 10],...,[95 96 97]}. How can I do that?

Risposta accettata

Guillaume
Guillaume il 17 Ott 2016
v = 2:97;
intervallength = 3;
assert(isrow(v), 'input not a row vector');
assert(mod(numel(v), intervallength) == 0, 'vector length not divisible by interval length')
splitv = mat2cell(v, 1, ones(1, numel(v)/intervallength) * intervallength);

Più risposte (0)

Categorie

Scopri di più su Graph and Network Algorithms 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!

Translated by