Place filenames with common pattern in a cell array
Afficher commentaires plus anciens
Hi there,
If I have a cell array containing filenames in the following format 'breakpoint_b40_f15.txt', 'breakpoint_b50_f15.txt', 'breakpoint_b40_f20.txt', 'breakpoint_b50_f20.txt', how do I create a new cell array where each row contains the files with the same number after 'f'? for example. 'breakpoint_b40_f15.txt' and 'breakpoint_b50_f15.txt' should be in the same row, and 'breakpoint_b40_f20.txt' and 'breakpoint_b50_f20.txt' should be in the same row but in a different row to the f15 row.
Many thanks
2 commentaires
C = {'breakpoint_b40_f15.txt', 'breakpoint_b50_f15.txt', 'breakpoint_b40_f20.txt', 'breakpoint_b50_f20.txt'};
D = reshape(C,2,2).'
Davindra Usov
le 24 Avr 2023
Déplacé(e) : Stephen23
le 24 Avr 2023
Réponse acceptée
Plus de réponses (2)
dpb
le 24 Avr 2023
Déplacé(e) : Image Analyst
le 24 Avr 2023
C = {'breakpoint_b40_f15.txt', 'breakpoint_b50_f15.txt', 'breakpoint_b40_f20.txt', 'breakpoint_b50_f20.txt'}.';
N=(extractBetween(extractAfter(C,'breakpoint_'),'_','.txt'))
uN=unique(N)
Add/use N as a grouping variable or sort by indexing array...
Kevin Holly
le 24 Avr 2023
Déplacé(e) : Image Analyst
le 24 Avr 2023
C = {'breakpoint_b40_f15.txt', 'breakpoint_b50_f15.txt', 'breakpoint_b40_f20.txt', 'breakpoint_b50_f20.txt', 'breakpoint_b40_f25.txt','breakpoint_b50_f25.txt'};
D = strfind(C,'breakpoint_b40_f');
f = length([D{:}])
D = strfind(C,'_f15');
b = length([D{:}])
D = reshape(C,b,f).'
1 commentaire
Davindra Usov
le 25 Avr 2023
Catégories
En savoir plus sur Shifting and Sorting Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!