IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Comment incorporer un fichier ASCII dans matlab?


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 12
    Par défaut Comment incorporer un fichier ASCII dans matlab?
    Bonjour,

    Pour transférer les données provenant de SAS dans Matlab, j'utilise le fichier intermédiaire "ASCII": sas table-->fichier ASCII --> load fichier ASCII sous matlab. Mais cela ne marche pas. Cela due, éventuellement, au format de nombre dans fichier ASCII n'est pas bon.

    Par exemple: sas table --> fichier ASCII: dans ce fichier, les nombres sont stockés ainsi: 15.44331, 116.895647.
    Mais sous Matlab, la commande load fichier ASCII ne peut pas reconnaitre ce fichier car elle nécessite le format de nombre: 1.54433e+1.

    Comment peut-on transférer ce genre de données dans Matlab?

    Merci d'avance!

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Tu peux essayer avec la fonction DLMREAD comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    X = dlmread('data.txt',',')

  3. #3
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Normalement la commande LOAD devrait fonctionner si tu n'as que des nombres (quelque soi le format pourvu que le séparateur décimal soit le point), et il faut aussi que le nombre de colonnes soit constant
    As-tu autre chose que des nombres ?

    Peux-tu nous montrer un exemple de ton fichier (2 à 3 lignes) ?
    Quel message d'erreur as-tu exactement ?

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 12
    Par défaut
    ??? Error using ==> load
    Number of columns on line 15 of ASCII file U:\Sincor_Matlab\day.dat
    must be the same as previous lines.
    Mon fichier:
    0 0 116.163556 0 0 0 0 620.361019 0 0 0 0 0 0 0 0 0 14.7 86.885333 -1 354 0 0 0 42.754033012 24 0
    0 0 119.025778 24 0 0 0 561.272457 0 0 0 55613.232241 0 0 44.781 1241.893487 0 0 105.352889 -1 354 0 1 0 38.681768229 0 0
    0 0 116.334222 0 0 0 0 618.968653 0 0 0 0 0 0 0 0 0 324.733656 87.585778 -1 354 0 0 0 42.658073949 24 0
    0 260.827569 118.812444 24 986.947584 77633 78.659699115 512.539622 6.308083 0.847996 84115.476725 146071.78534 1007.500751 1268.32832 119.942 1217.853507 20.553167 325.400832 106.945778 -1 354 0 1 0.5758502679 35.323199311 0 0
    0 58.028772 119.047111 24 413.28562 33056 79.983426474 550.423599 3.485457 0.826904 34041.680778 54752.506033 419.682056 477.710828 46.328 1181.844803 6.396436 327.764955 103.527111 -1 354 0 1 0.6217374006 37.934086768 0 0
    0 200.446449 119.162667 24 1243.938688 82990 66.715506802 505.592292 7.612619 0.788341 107421.20765 131834.79035 1273.996913 1474.443362 149.985 878.986501 30.058225 328.229077 111.331556 -1 354 0 1 0.8148168429 34.844403308 0 0
    0 503.226318 118.112 24 2500.891959 168110 67.220017 438.265559 10.839024 0.950057 222924.06359 236343.00274 2535.890114 3039.116432 256.526 921.321826 34.998155 0 0 -1 354 0 1 0.9432226087 30.204380358 0 0
    0 649.858094 120.547556 24 4322.154851 285221 65.990463052 345.136531 15.696434 0.93972 419027.06517 0 4330.517007 4980.375101 0 1023.913108 8.362156 130.890102 116.215111 -1 354 0 1 0 23.786115162 0 0
    0 644.329447 120.647111 24 4411.074604 287103 65.086861088 335.593018 15.482758 0.959246 431050.07501 0 4420.177938 5064.507385 0 1039.163532 9.103334 134.922164 116.558222 -1 354 0 1 0 23.128395451 0 0
    0 406.924721 120.940444 24 3412.66681 216773 63.52011845 345.716684 12.419683 0.926292 333428.93062 357183.44421 3433.364326 3840.289047 329.823 1082.954931 20.697516 131.673308 116.723556 -1 354 0 1 0.9334949198 23.826098139 0 0
    0 443.172262 120.730667 24 3083.620903 195453 63.384250577 344.251798 11.162681 0.883634 301784.41958 332505.50825 3111.002357 3554.174619 319.986 1039.125175 27.381454 179.884006 115.882667 -1 354 0 1 0.907607279 23.725141144 0 0
    0 0 117.482667 0 0 0 0 557.414441 0 0 0 0 0 0 0 0 0 174.24202 85.448889 -1 354 0 0 0 38.41588153 24 0
    0 0 93.770667 0 0 0 0 407.720514 0 0 0 0 0 0 0 0 0 123.203077 86.819556 -1 354 0 0 0 28.099277326 24 0
    0 0 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 258.813794 84.108444 -1 354 0 0 0 0 24 0
    0 3.509653 92.209778 0.033 246.784727 17454.545455 70.727818805 409.736545 1.170928 6.460903 15953.99526 14392.86456 249.392 252.901653 34.5 417.18448 2.607273 241.467226 85.418667 -1 354 0 0 1.1084656007 28.238218125 23.967 0
    0 132.29126 68.200889 8.6 1970.266487 139247.44186 70.674420328 203.24566 4.722058 0.730259 108072.62795 232752.86471 1994.19514 2126.4864 257.467 904.010474 23.928653 168.484003 95.068444 -1 354 0 0 0.4643235136 14.007281875 15.4
    0

  5. #5
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Citation Envoyé par caro95470 Voir le message
    Normalement la commande LOAD devrait fonctionner si tu n'as que des nombres (quelque soi le format pourvu que le séparateur décimal soit le point), et il faut aussi que le nombre de colonnes soit constant
    Le message d'erreur te signale qu'à partir de la ligne 15, le nombre de colonnes change, c'est pour cela que LOAD ne peut fonctionner sur ton fichier.
    As-tu essayé la méthode de Dut ?
    Sinon tu peux aussi regarder l'aide de la fonction TEXTSCAN.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 12
    Par défaut
    Merci, c'est bon!
    J'ai réduit le nombre de colonne, et ça marche

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 12
    Par défaut
    Maintenant, j'ai un autre soucis: mon fichier ASCII contenant 41 colomne, "load","dlmread" ou "inport data" ne marche plus, comment je fais pour importer ce fichier ASCII ?

    Voilà la première ligne de mon ficher:
    446.88295217 10386.245934 954.10272109 17634.42449 88670.791915 344.55646259 7305.4646259 6527.1468247 67331.389732 1056.3314203 15767.757465 276746.94159 3.8776990275 190.89917082 8.8931972789 129.10272109 2344.4244898 661891.864
    10935600.079 203.79018986 2055.3641152 6318831.1816 49249109.175 111469688.55 1905697891.8 265512.62697 2104240.6271 4684761.0133 81037642.153 9.408267139 76.213637313 0.0089283966 0.5667675628 -1 63.893197279 356.88 271.24208333
    6203.84076 22.628571429 435.83651804 0.2305315125

  8. #8
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Je ne vois pas en quoi le fait qu'il y ait 41 colonnes changerait quelque chose

    Et donc, c'est quoi qui "ne marche plus" ??
    Message d'erreur, rien, résultat incorrect ....

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/12/2005, 00h21
  2. Réponses: 5
    Dernier message: 16/07/2005, 00h01
  3. Import fichier ASCII dans une base
    Par pithier dans le forum Bases de données
    Réponses: 3
    Dernier message: 01/02/2005, 19h03
  4. Comment generer un fichier war dans java
    Par relivio dans le forum ANT
    Réponses: 4
    Dernier message: 12/03/2004, 13h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo