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

SAS Base Discussion :

Importation d'un txt sans séparateur


Sujet :

SAS Base

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut Importation d'un txt sans séparateur
    Bonjour,

    Je veux importer une base sas séparateur vers sas, voilà par exemple ma base:
    achraf 00012.58casablanca
    yosra 00001.22ouarzazate
    ilyas 00000.99casawi

    voilà le code que j'utilise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DATA test.test1;
    INFILE 'C:\Users\yosra\Desktop\PFE\test1.TXT';
    INPUT  nom $ 1-10  note 11-18  ville $ 19-33@@;
    RUN;
    Mais je reçois une table avec seulement 2 observations. et la variable" ville" contient par exemple pour la première ligne : yosra 00001

  2. #2
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Bonjour.
    Le souci vient de ce que toutes les lignes ne font pas 33 caractères de long. Or, tu dis à SAS du lire la ville du 19e au 33e caractère.
    Il y a plusieurs solutions au niveau de l'option INFILE : soit tu dis à SAS de ne pas aller plus loin que le bout de la ligne (MISSOVER), soit tu complètes la ligne par des blancs (PAD).
    Par contre, pourquoi ce @@ ? Tu peux avoir plusieurs observations sur la même ligne de fichier texte ?
    Bon courage.
    Olivier

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    Merci bcp de m'avoir répondue, voilà j'ai supprimé les @@, et ca a marché , mais lorsque je refais la même chose pour une grande base qui contient 649 caractères, je remarque qu'à partir de la position 266 ( pou moi c'est la 8ème variable) SAS commence à recopier les valeurs de la deuxième observation.

    c'est à dire la 8eme variable est remplacée par la valeur de la variable 1 pour la 2eme observation, j'espère que j ai pu expliquer mon problème

  4. #4
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Regarde du côté de l'option LRECL.
    Bon courage.
    Olivier

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    d'accord merci beaucoup

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    désolée pour le dérangement:s je ne peux pas utiliser cette option parce que je travaille sur SAS 9.1 :s

  7. #7
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Citation Envoyé par yo.ourti Voir le message
    désolée pour le dérangement:s je ne peux pas utiliser cette option parce que je travaille sur SAS 9.1 :s
    ça ne devrait pas changer grand chose, car LRECL n'est pas du tout une nouveauté des versions 9.2 et ultérieures. Pour autant que je me souvienne, il y en avait déjà en version 6.x !
    Bon courage.
    Olivier

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut
    est ce que mon code est correct?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    DATA test.test1;
    INFILE 'C:\Users\yosra\Desktop\PFE\données\012013\DMS0020.txt'/ lrecl=650;
     
    INPUT @1 AccountNumber $ 26.  
          SOLDMYCAL 44-60
          branch $ 84-94
          paymentype 95
    	  soldemy 108-125
    	  description $ 126-160
    	  racine $ 166-171
    	  classification $ 181-215
    	  asofdate  216-224
    	  loanoff $ 241-245
         @266 interestrate  14.3;
     
    	run;

  9. #9
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 34
    Points : 29
    Points
    29
    Par défaut c résolu
    merci beaucoup pour votre orientation mon premier problème est résolu :p

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. XLS en TXT sans séparateur
    Par julio44 dans le forum Excel
    Réponses: 14
    Dernier message: 14/04/2023, 09h55
  2. [Débutant] Importer un fichier txt sans la 1ère ligne
    Par Bubulle31 dans le forum MATLAB
    Réponses: 1
    Dernier message: 19/08/2011, 14h06
  3. [MySQL] Importer un fichier txt comprenant un '\' comme séparateur de champs
    Par enesideme dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 02/01/2010, 19h42
  4. [VBA-excel] import de fichier txt sans délimiteur de texte
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/01/2008, 05h49
  5. [VBA-E]import fichier TXT et séparateur
    Par arkazar dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/04/2006, 17h10

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