Cell array indexing in matlab

2 Ansichten (letzte 30 Tage)
fereshteh beygi ahmadvandi
fereshteh beygi ahmadvandi am 14 Mär. 2021
Kommentiert: Adam Danz am 16 Mär. 2021
hi
I have an empty cell array
Let call it W
At the output It must have a cell array with two columns and n rows
Each element of columns is an array with variable length
I wanna write at the end of arrays in columns
How can access the last element of that arrays in the cells
for example W(1,2) end+1 i.e At the end of an array at the second column of first row

Akzeptierte Antwort

fereshteh beygi ahmadvandi
fereshteh beygi ahmadvandi am 16 Mär. 2021
Bearbeitet: fereshteh beygi ahmadvandi am 16 Mär. 2021
W{1,2}(1,end+1)
But first, define your empty cell array as follows:
W = cell(2,2);
  4 Kommentare
fereshteh beygi ahmadvandi
fereshteh beygi ahmadvandi am 16 Mär. 2021

I wish I could ask you for help with any questions I may have in the future Of course, from a faster method other than this website

Adam Danz
Adam Danz am 16 Mär. 2021
> I had found the solution myself
That's the best way to learn! Nicely done.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Adam Danz
Adam Danz am 16 Mär. 2021
Bearbeitet: Adam Danz am 16 Mär. 2021
To access the last element of an array stored in cell array C at location {m,n},
y = C{m,n}(end);
To access the last element of all cells stored in cell array C,
y = cellfun(@(x)x(end),C);
Update
To append a value to the end of the vector stored in cell array C at location {m,n},
C{m,n}(end+1) = x;
To append a value M(m,n) in matrix M to the end of the vector stored in cell C{m,n},
C = reshape(arrayfun(@(i){[C{i}, M(i)]},1:numel(C)),size(C));
Demo:
C = reshape(arrayfun(@(i){rand(1,randi(100))},1:100),50,2); % original values
M = reshape(1:100,50,2); % values to append
C2 = reshape(arrayfun(@(i){[C{i}, M(i)]},1:numel(C)),size(C));

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by