identifying the elements of a cell
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
CLARK KENDRICK GO
el 10 de Jul. de 2018
Comentada: Sammit Jain
el 10 de Jul. de 2018
I have a 700x8 cell, with each cell having a matrix 6x2 in size. I want to get the first row of each cell. How do I perform this?
0 comentarios
Respuesta aceptada
Mandeep Singh
el 10 de Jul. de 2018
Editada: Mandeep Singh
el 10 de Jul. de 2018
From my understanding of the question, you can achieve the required task by following snippet of code:
cnt = 1;
for i = 1:700
for j = 1:8
a(cnt) = C{i,j}(1,:); % stores the first row of each cell in a;
cnt = cnt + 1;
end
end
1 comentario
Sammit Jain
el 10 de Jul. de 2018
I think using a for loop will be slightly computationally expensive in this case.
Más respuestas (1)
Sammit Jain
el 10 de Jul. de 2018
Hi, This seems to be a simple case of cell indexing.
Let's call your original cell array (of cells) 'mainCellArray'
Now, let's have allRowsArray = [mainCellArray{:}] Then, firstRowArray = [allRowsArray{1,:}]
Essentially, we're first re-arranging the contents of the main cell array, stacking them one next to the other, then we just index the first row.
Here's what the code should look like:
allRowsArray = [mainCellArray{:}];
firstRowArray = [allRowsArray{1,:}]
Hope this helps. If in case you want to pick a different combination of rows/columns, then just try to transpose these concatenations and see if you get what you want.
Cheers.
0 comentarios
Ver también
Categorías
Más información sobre Multidimensional Arrays 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!