Cell array indexing in matlab
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
fereshteh beygi ahmadvandi
el 14 de Mzo. de 2021
Comentada: Adam Danz
el 16 de Mzo. de 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
0 comentarios
Respuesta aceptada
fereshteh beygi ahmadvandi
el 16 de Mzo. de 2021
Editada: fereshteh beygi ahmadvandi
el 16 de Mzo. de 2021
4 comentarios
Adam Danz
el 16 de Mzo. de 2021
> I had found the solution myself
That's the best way to learn! Nicely done.
Más respuestas (1)
Adam Danz
el 16 de Mzo. de 2021
Editada: Adam Danz
el 16 de Mzo. de 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));
0 comentarios
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!