create a matrix using a vector such that each row is one offset of the previous row

1 visualizzazione (ultimi 30 giorni)
Let say I have a vector v = [v1, v2, v3, v4, ..., vn], I would like to create a matrix using the vector such that each row is one offset of the previous row, i.e.
matrix = [v1 v2 v3;
v2 v3 v4;
v3 v4 v5;
v(n-2) v(n-1) v(n)]
How can I achieve this?

Risposte (1)

Akira Agata
Akira Agata il 26 Giu 2020
If the output matrix is always N-by-3, the following straight-forward way might be enough:
matrix = [v(1:end-2);v(2:end-1);v(3:end)]';

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by