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 :

Modifier des format caractère sous sas


Sujet :

SAS Base

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2015
    Messages : 62
    Points : 27
    Points
    27
    Par défaut Modifier des format caractère sous sas
    Bonjour;

    j'ai un petit souci: j'ai une variable code en format caractère: AX-455-TB, j'aimerais avec une fonction transformer l'ensemble des modalités de la variable code ainsi : AX455TB donc enlever à chaque fois les caractères spéciaux (tiré, /, etc...).


    Un grand merci

  2. #2
    Membre éprouvé
    Avatar de m.brahim
    Homme Profil pro
    SAS / BIG DATA
    Inscrit en
    Juillet 2011
    Messages
    461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : SAS / BIG DATA
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 461
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    Je te propose cette solution:
    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
    DATA test(drop=i string2);
    INPUT string $ 1-28;
    length string1 $20.;
    string1='';
    retain string1;
    do i =1 to length(string);
    string2=prxmatch("/[a-zA-Z0-9]/",char(string,i));
    if string2>0 then string1=catt(string1,char(string,i)); 
    end;
    CARDS;
    ACBED
    11
    12
    zx
    11 2c
    abc123
    ùlosnàçèz12
    hdyuUUZED-TDVèHDG-
    AX-455-TB
    $ldkd'"éà:*ùse15&²f
    ;
    run;
    Cordialement
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2015
    Messages : 62
    Points : 27
    Points
    27
    Par défaut
    Elle marche. Un grand merci.

    Brahim j’ai une dernière question sur un merge. J’ai deux base À Et B. La base case A contient 36000 observations et la base B 8000. Je fais un merge entre les deux avec une condition if à.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Data toto;
    Merge A(in=a) B(in=b);
    By num_ctr id cco; 
    If a ;
    Run;
    La table toto contient plus d’observation que la table A donc j’ai sans doute des doublons. Comment pourrais-je les identifier?
    Merci

  4. #4
    Membre éprouvé
    Avatar de m.brahim
    Homme Profil pro
    SAS / BIG DATA
    Inscrit en
    Juillet 2011
    Messages
    461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : SAS / BIG DATA
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 461
    Points : 1 119
    Points
    1 119
    Billets dans le blog
    14
    Par défaut
    Bonjour,

    je ne saurai te dire d'où viens le problème:

    voici un 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
     
    data test;
    input var1 var2 var3 var4 $;
    cards;
    1 2 3 A
    1 2 3 A
    1 2 3 B
    ; run;
     
    data test1;
    input var1 var2 var3;
    cards;
    1 2 3
    ; run;
     
    data test2;
    merge test(in=a) test1(in=b);
    by var1 var2 var3;
    if a;
    run;
    Cordialement
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

Discussions similaires

  1. format heure sous SAS
    Par gwirionez dans le forum SAS Base
    Réponses: 5
    Dernier message: 13/01/2010, 14h37
  2. Gestion des retour chariot sous SAS
    Par sasseur dans le forum SAS Base
    Réponses: 4
    Dernier message: 23/04/2009, 10h53
  3. Couleur des graphes disponibles sous SAS
    Par stefsas dans le forum ODS et reporting
    Réponses: 3
    Dernier message: 06/08/2008, 16h47
  4. Suppression des premiers caractères sous VI
    Par Pesmerga dans le forum Administration système
    Réponses: 3
    Dernier message: 27/02/2008, 11h51
  5. modifier des formats d'import/export
    Par plaf dans le forum Access
    Réponses: 5
    Dernier message: 08/09/2005, 18h58

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