Select rows given a condition

86 visualizaciones (últimos 30 días)
Maria
Maria el 24 de Jun. de 2014
Respondida: Reda el 10 de Nov. de 2023
I have a big- cell variable and I want to select it, considering the first row. So for instance if I have
A:
1997 FD 89
1997 GD 65
1999 FDK 87
2010 UY 123
I would like to get
B:
1997 FD 89
1997 GD 65
I tried to use the '==1997' function but it is not working because the input is a cell. An when I use 'isequal' I get B but it's a '0x0 cell' variable. Can anyone help me? Thanks a lot!

Respuesta aceptada

Titus Edelhofer
Titus Edelhofer el 24 de Jun. de 2014
Hi Maria,
you need to convert the first column into a vector
firstColumn = cell2mat(A(:,1));
rows1997 = A(firstColumn==1997, :);
Titus
  1 comentario
Maria
Maria el 24 de Jun. de 2014
Yes! I just tried cell2mat and it worked perfectly! Thank you very much! :)

Iniciar sesión para comentar.

Más respuestas (2)

aneps
aneps el 24 de Jun. de 2014
Editada: aneps el 24 de Jun. de 2014
Try this:
B=A(any(A==1997,2),:)
  2 comentarios
Maria
Maria el 24 de Jun. de 2014
Hey. It gives me exactly the same error!
'Undefined function 'eq' for input arguments of type 'cell'
:(
Maria
Maria el 24 de Jun. de 2014
Still the same problem! I cannot use '==', it's always giving an error!

Iniciar sesión para comentar.


Reda
Reda el 10 de Nov. de 2023
Dear sir,
I have a file name(metadat) which have 3 column and no of rows. My question is how to select all rows from the file with specific condition such as PP=0. I try allot of salutions but i didnt get the wright one. Thanks alot

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by