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

7 vues (au cours des 30 derniers jours)
Will Swaston
Will Swaston le 9 Mai 2018
Modifié(e) : Stephen23 le 9 Mai 2018
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

Réponse acceptée

KSSV
KSSV le 9 Mai 2018
Read about strfind

Plus de réponses (1)

Stephen23
Stephen23 le 9 Mai 2018
Modifié(e) : Stephen23 le 9 Mai 2018
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:

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by