Votre question

comment lire des fichiers txt en boucle sous Matlab

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
19 Mars 2007 19:00:30

Bonjour.

Donc voila, j'ai un pb: j'ai deux cent fichiers textes a lire et pour chaque fichier il y a deux colonnes de dimension identique pour le mm fichier mais variable d'un fichier a l'autre. Et mon job serait de lire pour chaque fichier la derniere ligne de ma deuxieme colonne.

Pour l'instant j'ai reussi a afficher sous Matlab la bonne valeur mais pour un seul fichier texte :

k=3;
a=dlmread('cdn16002a0m8.txt','\t',k,0);
n=size(a);
n(1);
b=dlmread('cdn16002a0m8.txt','\t',n(1)-1+k,1);
b(1)

Mnt j'aimerais faire une boucle sur tous mes fichiers textes comme un truc de ce genre:

for i=0:5
for j=6:14
k=3;
a=dlmread('cdn16002aimj.txt','\t',k,0);
n=size(a);
n(1);
b=dlmread('cdn16002aimj.txt','\t',n(1)-1+k,1);
b(1)
end
end

Mais bien evidemment ca ne marche pas car Matlab cherche a ouvrir sur mon disque un fichier qui s'appelle 'cdn16002aimj' ...

Si quelqu'un a une idee!

Merci d'avance

Pascal

Autres pages sur : lire fichiers txt boucle matlab

a b L Programmation
19 Mars 2007 19:33:15

Matlab ne me parait pas le plus approprié pour ce genre de programme, mais passons ;) 

  1. a=dlmread( strcat('cdn16002aim',num2str(j),'.txt') ,'\t',k,0);

Il faut d'abord convertir Le nombre contenu dans j en chaîne de caractères, puis, il faut concaténer toutes les chaînes de caractères.

http://www-ccs.ucsd.edu/matlab/techdoc/refbycat/group16.html
20 Mars 2007 13:29:33

Merci CRicky.

Je vais essayer de voir ca. Je te tiens au courant :) 

Pascal

PS: pour ce genre de pg, tu me conseillerais quoi au lieu de Matlab?
Contenus similaires
20 Mars 2007 17:30:50

Re bonjour.

Je n'y arrive pas, j'ai du mal a utiliser la fonction num2str et strvcat. A chaque fois, Matlab dit que je n'utilise pas comme il faut la fonction dlmread.

Si quelqu'un pourrait m'aider un peu plus, ce serait super sympa.

Pascal
a b L Programmation
20 Mars 2007 19:09:14

C'est strcat pas strvcat.
Peux-tu montrer ce que tu as mis ?

ps: pour le langage, je pense qu'un langage classique comme le C serait plus performant
21 Mars 2007 20:04:58

Ah voila, je ne sais pas pourquoi j'essayais de corriger mon programme avec la fonction strvcat et non strcat.

Donc la ca marche! C'est niquel! :) 

Merci beaucoup CRicky :jap: 

Pascal
4 Avril 2007 15:24:43

moi j ai un pb bcp plus complexe. en fait j ai un dossier qui contient 1400 fichier dont les noms ne releve aucune correspondance et je doit les lire un par donc je pense pas q on peut faire une boucle sur les noms. est ce que par exemple peut on lire d'un dossier sur Matlab.
est ce que quelqu un peut m'aider.

Merci d avance.
a b L Programmation
4 Avril 2007 18:50:21

si non tu fais un renomage de groupe qui ajoute un chifre croisant sur tes fichier text

( ps : je suis un boulet mais au moin ma solution peut t'aider )
a b L Programmation
4 Avril 2007 19:49:21

sas_sabeur, c'est typiquement le genre de programme qui ne se fait pas avec matlab :) 
2 Mai 2007 12:05:24

Merci pour votre aide mais il y a toujours de solution
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS