Use strcmp() based on part of the row name in structure
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Loriann Chevalier
le 7 Avr 2022
Commenté : Loriann Chevalier
le 7 Avr 2022
Hi everyone,
I have a structure (DATA) with 3 fields (name, folder, data (tables)). There are many rows with names (field name) in a pattern as follows :
'London_FirstVariable_Water.txt'
'London_SecondVariable_Fire.txt'
'London_ThirdVariable_Air.txt'
'London_FourthVariable_Earth.txt'
'Paris_FirstVariable_Water.txt'
'Paris_FourthVariable_Fire.txt'
'Paris_FifthVariable_Air.txt'
'Paris_ThirdVariable_Earth.txt'
etc.
I want to make a new structure that keeps only the rows with 'XXX_XXX_Fire.txt', no matter what is before.
I have tried this :
FIRE = DATA(strcmp({DATA.name}, '%s_%s_Fire.txt'))
which obviously doesn't work.
However, it works like this :
FIRE = DATA(strcmp({DATA.name}, 'London_SecondVariable_Fire.txt'))
but this way I only get this one row, and I would rather not have to write each name in separate lines but something to get all the rows with a name containing Fire.txt
Any idea ?
Thanks for your help :)
0 commentaires
Réponse acceptée
Stephen23
le 7 Avr 2022
4 commentaires
Stephen23
le 7 Avr 2022
@Loriann Chevalier: you then use that logical vector as a logical index to remove the parts of the array/s that you do not want. Much like you showed in your question.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Structures dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!