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!

 採用された回答

Titus Edelhofer
Titus Edelhofer 2014 年 6 月 24 日

6 投票

Hi Maria,
you need to convert the first column into a vector
firstColumn = cell2mat(A(:,1));
rows1997 = A(firstColumn==1997, :);
Titus

1 件のコメント

Maria
Maria 2014 年 6 月 24 日
Yes! I just tried cell2mat and it worked perfectly! Thank you very much! :)

サインインしてコメントする。

その他の回答 (2 件)

aneps
aneps 2014 年 6 月 24 日
編集済み: aneps 2014 年 6 月 24 日

1 投票

Try this:
B=A(any(A==1997,2),:)

2 件のコメント

Maria
Maria 2014 年 6 月 24 日
Hey. It gives me exactly the same error!
'Undefined function 'eq' for input arguments of type 'cell'
:(
Maria
Maria 2014 年 6 月 24 日
Still the same problem! I cannot use '==', it's always giving an error!

サインインしてコメントする。

Reda
Reda 2023 年 11 月 10 日

0 投票

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

カテゴリ

タグ

質問済み:

2014 年 6 月 24 日

回答済み:

2023 年 11 月 10 日

Community Treasure Hunt

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

Start Hunting!

Translated by