how to extract subarray of cell array based on logical condition?

Hi everyone, I have a cell array of the form (but with lots more data)...
'TS-G5-box11-001_0000_-0.0_May01.mrc' 'box11' '001' '-0.0' 'box11_tomo_001'
'TS-G5-box11-001_0001_2.0_May01.mrc' 'box11' '001' '2.0' 'box11_tomo_008'
I'm struggling with something that should be really easy, I want to be able to access a subarray that just shows everything that contains 'box11_tomo_001' or 'box11_tomo_001', is there an easy way to achieve this?
Cheers,
Will

 採用された回答

その他の回答 (1 件)

Stephen23
Stephen23 2018 年 5 月 9 日
編集済み: Stephen23 2018 年 5 月 9 日

0 投票

Actually all you need is strcmp. Given:
C = {...
'TS-G5-box11-001_0000_-0.0_May01.mrc' 'box11' '001' '-0.0' 'box11_tomo_001'
'TS-G5-box11-001_0001_2.0_May01.mrc' 'box11' '001' '2.0' 'box11_tomo_008'};
>> idx = strcmp(C(:,5),'box11_tomo_001')
idx =
1
0
If you have multiple string that you want to match then ismember can be useful:

カテゴリ

ヘルプ センター および File ExchangeCell Arrays についてさらに検索

タグ

質問済み:

2018 年 5 月 9 日

編集済み:

2018 年 5 月 9 日

Community Treasure Hunt

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

Start Hunting!

Translated by