extract each ten values

11 visualizzazioni (ultimi 30 giorni)
Housam
Housam il 14 Lug 2019
Commentato: Housam il 15 Lug 2019
Hello,
I have a 60x23 cell and each cell consist of columns with different length.
I need to extract ten values starting from last ten values, then shift by one value and repeat.
In other words, after extacting the last ten values (end-9: end), i need to omit the last value. then extract the ten values before that. so on.
What would be the best way to achieve that? Thank you for the insights.
  1 Commento
dpb
dpb il 14 Lug 2019
As described, probably a loop just recomputing the indices.
It's not clear, however, whether this is a moving-by-one element process or in groups of ten non-overlapping elements--the end objective could possibly be accomplished for either of those by far more efficient manners -- filter for the first, perhaps, or reshape by the 10 factor by columns for the latter for vector processing by column.
"It all depends..."
Give us a concrete example of what you're really after...

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 14 Lug 2019
Try a loop to get the contents of the cells in your cell array, then extract 10 elements and move back towards the beginning of your vector one element at a time.
[rows, columns] = size(ca); % ca is your cell array with variable sized matrices in the cells.
for col = 1 : columns
for row = 1 : rows
% Get the array inside this cell from the cell array.
thisVector = ca{row, col};
% Get the size of this vector
vecCols = length(thisVector);
% Get last 10 values and move one element at a time towards the beginning of the vector.
len = length(vecCols);
for k = len - 9 : -1 : 1
last10 = vecCols(k : k+9);
% Now do something with last10.....
% I don't know what that would be - you haven't told us.
end
end
end
  1 Commento
Housam
Housam il 15 Lug 2019
Thank you! this is what i was looking for.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Multidimensional Arrays 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