Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

How can I delete some specific rows from a cell?

1 visualización (últimos 30 días)
Thimiod Athan
Thimiod Athan el 23 de Sept. de 2016
Cerrada: MATLAB Answer Bot el 20 de Ag. de 2021
How can I delete som specific rows from a cell according to the matrix(see the pic). When the elementw of the Matrix are1 I must delete the same rows from the cell. Any ideas?
<<
<<
>>
>>
  3 comentarios
Thimiod Athan
Thimiod Athan el 24 de Sept. de 2016
Editada: Thimiod Athan el 24 de Sept. de 2016
Hello Adam. I want to delete the 2 raws (with the red color) from the following cell(6X3)
Thimiod Athan
Thimiod Athan el 24 de Sept. de 2016
I think I find it Table(find(A==1),:)=[]. It was sooo easy...
Thanks for your help

Respuestas (2)

Image Analyst
Image Analyst el 23 de Sept. de 2016
Editada: Image Analyst el 23 de Sept. de 2016
What is "elementw" and "Matrix"? All we see are "Table" and "A".
If you have a cell array called ca, and you have a logical column vector "A", you can remove cells from ca where A is 1 or true like this:
caNew = ca(A==0); % Extract cells where A=0 (i.e. remove cells where A=1).
Or, equivalently
caNew = ca; % Initialize
caNew(A) = []; % Remove cells where A=1
  3 comentarios
Thimiod Athan
Thimiod Athan el 24 de Sept. de 2016
I think I find it Table(find(A==1),:)=[]. It was sooo easy...
Thanks for your help
Image Analyst
Image Analyst el 24 de Sept. de 2016
Even easier is to use logical indexing. No need for find():
Table(A==1,:)=[];
table is a built in function in MATLAB. Even though MATLAB is case sensitive, so table is different than table, it's a good idea not to use variable names that are the "same" as function names.
I could have told you this . . . if you'd been a little more careful about your question. For example you never mentioned the "Table" variable at all in your question. And you used the word "cell" in a non-MATLAB-ish way. Go here http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F for a very good discussion of cells in MATLAB.

Vignesh Murugavel
Vignesh Murugavel el 3 de Ag. de 2021
Using Logical Indexing
Table(A==1,:)=[];

La pregunta está cerrada.

Community Treasure Hunt

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

Start Hunting!

Translated by