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 :

Concaténer des doublons


Sujet :

SAS Base

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Concaténer des doublons
    Bonjour,

    Dans ma base de données, j'ai des doublons. Cependant, ceux-ci n'ont pas toujours répondu la même chose: en réalité, on interroge des services et donc plusieurs personnes répondent mais ont le même identifiant de service.
    Ce que je voudrais, c'est pouvoir fusionner ces lignes pour avoir une ligne d'observation contenant le plus d'informations possibles! La plupart des variables sont dichotomiques. Voici un exemple de doublons:

    2 1 0 0 0 0
    2 0 1 0 0 0
    2 0 0 0 1 0
    2 1 0 0 0 0
    2 0 1 0 0 0
    2 0 0 0 0 0
    2 0 0 1 0 0
    2 1 1 1 1 1
    2 0 1 0 0 0
    2 1 0 0 0 0
    2 0 0 1 0 0
    2 0 1 0 0 0
    2 0 1 0 0 0

    JE voudrais que SAS me mette "1" chaque fois que l'information apparaît dans chaque doublons et sinon "0".

    Je suppose que c'est possible en PROC SQL mais je ne m'y connais pas assez.

    Est-ce que quelqu'un saurait m'aider?

    Merci

  2. #2
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    ?????????? ils sont où les doublons ?????????????

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Dans la première colonne.

    En fait, ce que j'ai dans ma bdd. Ce sont des multiréponses pour un même service numéroté. Et on ne voudrait qu'une seule ligne de réponse par service.
    J'aimerais pouvoir condenser l'information de ces individus en une ligne.

    Est ce que c'est possible?

    Je ne sais pas si je suis suffisamment clair...

  4. #4
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 625
    Points : 3 403
    Points
    3 403
    Par défaut
    Hello,
    à première vue, Je dirai une proc transpose.
    je t'invite aussi à regarder ce post. ça pourra peut être t'aider.

  5. #5
    Membre éclairé

    Femme Profil pro
    SAS FRANCE - Support Clients France et Europe
    Inscrit en
    Février 2010
    Messages
    289
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : SAS FRANCE - Support Clients France et Europe
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 289
    Points : 886
    Points
    886
    Par défaut
    Bonjour,

    je pencherai pour une proc summary peut-être ? Ainsi vous n'auriez qu'une seule ligne par ID, et les colonnes seraient la somme des autres...
    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
    17
    18
    19
    20
    21
    22
    23
    24
    DATA data1;
    input ID $ r1 r2 r3 r4 r5;
    DATALINES;
    2 1 0 0 0 0
    2 0 1 0 0 0
    2 0 0 0 1 0
    2 1 0 0 0 0
    2 0 1 0 0 0
    2 0 0 0 0 0
    2 0 0 1 0 0
    2 1 1 1 1 1
    2 0 1 0 0 0
    2 1 0 0 0 0
    2 0 0 1 0 0
    2 0 1 0 0 0
    2 0 1 0 0 0
    ;
    run;
     
    proc summary data=data1 nway ;
      class ID ;
      var R1 R2 R3 R4 R5 ;
      output out=data2 (drop=_freq_ _type_) sum= ;
      run ;
    Géraldine Cade Deschamps
    Support Clients SAS

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    merci!! J'ai en effet fait ca et recodé après si >0 = 1.

    Grand merci

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

Discussions similaires

  1. Concaténer des champs quand doublon
    Par boudji01 dans le forum Développement
    Réponses: 2
    Dernier message: 20/01/2012, 10h40
  2. Concaténer texte avant le retrait des doublons
    Par inka1977 dans le forum Langage SQL
    Réponses: 10
    Dernier message: 11/08/2008, 17h40
  3. Réponses: 2
    Dernier message: 12/05/2006, 08h35
  4. Effacer des doublons
    Par ben53 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 12/07/2004, 17h56
  5. Réponses: 2
    Dernier message: 07/07/2004, 17h44

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