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 :

Récupération de lien de personne


Sujet :

SAS Base

  1. #1
    Membre à l'essai
    Homme Profil pro
    etudes statistiques
    Inscrit en
    Septembre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : etudes statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2015
    Messages : 8
    Points : 12
    Points
    12
    Par défaut Récupération de lien de personne
    Bonjour,
    Je sollicite votre aide sur un sujet sur lequel je travaille en ce moment.
    J'ai deux tables qui se présentent comme: tab1

    nom qte
    az 10
    ab 11
    vb 45
    y 1
    xc 4

    et une table de lien: ab2

    prs lien
    az y
    y az
    wc ab
    y bb
    bb az

    je souhaite la sortie:

    nom qte
    az 10
    y 1
    bb valeur
    ab 11
    wc valeur

    l'idée est que chaque fois q'une personne dans la tab1 respecte une condition, je rapatrie toutes les personnes liées à cette personne et je les range en dessous (comme sur la tab de sortie)

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur en SAS/ Statisticien
    Inscrit en
    Janvier 2013
    Messages
    483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur en SAS/ Statisticien
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 483
    Points : 1 552
    Points
    1 552
    Par défaut
    Bonjour,
    Je te propose une méthode simple et classique :
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    data tab_1 ;
    input nom $ qte ;
    cards ;
    az	10
    ab	11
    vb	45
    y	1 
    xc	4 
    ; run ; 
     
    /* une table de lien: Tab2 */
     
    data tab_2 ;
    input prs $ lien $ ;
    cards ;
    az	y 
    y	az
    wc	ab
    y	bb
    bb	az
    ; run ; 
     
    data tab_Twin ;
    set tab_2 ;
    array are(2) $ prs lien ;
    do i=1 to 2 ;
    nom=are(i) ; output ;
    end  ;
    run ;  
     
    proc freq data=tab_twin ;
    tables nom / noprint out= twin_freq(keep=nom) ;
    run ;  
     
    proc sort data=tab_1 ;     by nom ; run ;
    proc sort data=twin_freq ; by nom ; run ;
     
    DATA final;
    merge tab_1 (IN=A) twin_freq (IN=B);
    BY nom;
    IF B ;
    if missing(qte) then qte=-999999 ;
    run;
    Bon courage
    Ward

  3. #3
    Membre à l'essai
    Homme Profil pro
    etudes statistiques
    Inscrit en
    Septembre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : etudes statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2015
    Messages : 8
    Points : 12
    Points
    12
    Par défaut a Ward
    Bonjoiur Ward,
    Je vous remercie pour votre approche de solution mais dès que je change la table des liens, rien ne fonctionne. ce que je souhaite est que chaque individu de la tab1 soit suivi par les personnes liées. exemple:

    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 tab_1 ;
    input nom $ qte ;
    cards ;
    az 10
    ab 11
    vb 45
    y 12
    xc 43
    wc 8
    bb 97
    ; run ; 
     
    /* une table de lien: Tab2 */
     
    data tab_2 ;
    input prs $ lien $ ;
    cards ;
    az y 
    y az
    wc ab
    y bb
    bb az
     
    ; run ;
    si je prends "az" de la tab1, j'aimerais qu'il soit suivi par "y","bb" (peu importe l'ordre) avant de prendre l'individu "ab"( qui lui sera suivi par "wc" et etc... je veux gérer les liens comme une famille (le pere, suivi par la mere et puis les enfants ou vice versa).
    Merci encore pour votre aide.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur en SAS/ Statisticien
    Inscrit en
    Janvier 2013
    Messages
    483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur en SAS/ Statisticien
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2013
    Messages : 483
    Points : 1 552
    Points
    1 552
    Par défaut
    Bonjour,
    Je te conseille de voir le code dans le lien suivant qui traite un sujet semblable par des tables de hachage :

    https://www.developpez.net/forums/d1...-meme-famille/

    Bon Courage
    Ward

Discussions similaires

  1. TJava récupération de lien symbolique
    Par cragoroth dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 04/10/2017, 14h42
  2. Récupération des liens dans un textarea
    Par will89 dans le forum Langage
    Réponses: 2
    Dernier message: 23/04/2007, 16h21
  3. Récupération de liens d'une page google
    Par vilcoy dans le forum VB.NET
    Réponses: 2
    Dernier message: 11/04/2007, 12h57
  4. Récupération du texte d'un lien hypertext
    Par -=ET=- dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/05/2005, 17h08
  5. récupération de valeur de lien
    Par sex-sansbol dans le forum ASP
    Réponses: 3
    Dernier message: 07/06/2004, 10h43

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