1. #1
    Nouveau membre du Club
    Femme Profil pro
    statisticienne
    Inscrit en
    mai 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : statisticienne
    Secteur : Santé

    Informations forums :
    Inscription : mai 2011
    Messages : 38
    Points : 34
    Points
    34

    Par défaut import - test 1ère ligne = nom des variables

    Bonjour à tous,

    Je viens vers vous avec espoir !

    J'ai un nombre conséquent de fichiers txt à importer dans SAS. Ils ont tous la même tête (même nombre de variables, mêmes variables). Le hic est que certains ont le nom des variables en 1ère ligne, d'autres pas. Je ne sais pas à l'avance lesquels. Il m'est impossible de les ouvrir tous pour vérifier vu qu'il y en a vraiment, vraiment beaucoup.
    Je voudrais les importer avec un infile pour avoir les formats qui vont bien.
    Est-ce que vous auriez une idée ou une astuce pour tester si la première ligne contient le nom des variables au moment de l'import ?
    Par exemple, si à la première ligne il y a "country", c'est que c'est le nom des variables, sinon ce n'est que les modalités.

    merci d'avance pour toute suggestion !

  2. #2
    Membre expert
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    avril 2008
    Messages
    1 777
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : avril 2008
    Messages : 1 777
    Points : 3 926
    Points
    3 926

    Par défaut

    Bonjour.
    Oui, oui, ça a l'air faisable !
    Ce que tu pourrais essayer : un INFILE classique, avec éventuellement des jokers dedans car INFILE "c:\temp\*.txt" importe tous les fichiers d'extension txt du répertoire c:\temp.
    Ensuite un premier INPUT @ ; qui va lire la ligne (ce sera le contenu d'une variable _INFILE_ de type texte, que tu pourras tester pour savoir ce qu'elle contient, avec une fonction INDEX ou INDEXW par exemple) et se met en pause.
    Enfin, selon le résultat de ton test sur _INFILE_, soit tu fais INPUT ; pour abandonner la ligne sans rien importer si c'est l'en-tête, soit tu fais ton INPUT var1 var2 var3 ... ; comme d'habitude, avec tes formats d'import etc.
    Bon courage.
    Olivier

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    statisticienne
    Inscrit en
    mai 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : statisticienne
    Secteur : Santé

    Informations forums :
    Inscription : mai 2011
    Messages : 38
    Points : 34
    Points
    34

    Par défaut

    Merci Olivier ! C'était super rapide et clair !
    Je teste aujourd'hui et je clique sur "résolu" dès que j'importe sans souci

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

Discussions similaires

  1. Supprimer la ligne avec le nom des variables
    Par polo92 dans le forum ODS et reporting
    Réponses: 2
    Dernier message: 01/10/2015, 15h12
  2. récupération des noms des variables POST
    Par taffMan dans le forum Formulaires
    Réponses: 2
    Dernier message: 19/02/2008, 21h13
  3. Réponses: 2
    Dernier message: 20/05/2007, 18h22
  4. nom des variables pour se faciliter la vie
    Par Slumpy dans le forum VB.NET
    Réponses: 2
    Dernier message: 28/03/2007, 10h31
  5. Importer via asp.net c# des variables dans mon namespace xsl
    Par akaii dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/01/2006, 08h41

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