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 :

Compter le nombre de caractères dans une chaine


Sujet :

SAS Base

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Vietnam

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 19
    Points : 23
    Points
    23
    Par défaut Compter le nombre de caractères dans une chaine
    Bonjour
    Je cherche une fonction(dans proc sql si possible) qui donne le même résultat qu'avec un "count distinct" mais appliquer pour une chaine caractère. Je ne sais pas si c'est possible ou pas
    Ex: abcd => 4
    aaabcccd=>3
    J'ai pensé calculer la fréquence apparition de "a" puis"b" puis "c" puis "d" dans une chaine par ex,puis fait la somme de ces 4 fréquence mais je n'arrive pas
    Merci beaucoup

  2. #2
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Je ne comprends pas votre exemple

    Ex: abcd => 4
    aaabcccd=>3
    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  3. #3
    Membre éprouvé
    Avatar de Stackware
    Homme Profil pro
    ArchiDuc de la Sasserie
    Inscrit en
    Juillet 2013
    Messages
    439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ArchiDuc de la Sasserie
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 439
    Points : 1 017
    Points
    1 017
    Billets dans le blog
    4
    Par défaut
    Salut,

    Un peu lourd le truc :
    n_a = countc(string,'a');
    n_b = countc(string,'b');
    ...
    jusqu'à Z! Ensuite ajouter 1 à un compteur si n_a > 0, etc jusqu'à Z.

    Un peu laborieux le code

  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,
    Juste une idée pour calculer la fréquence d’un caractère dans une chaîne :
    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
     
    data exemple ;
    input text $10. ;
    cards ;
    abcd
    aaabcccd
    ; run;     
     
    data exemple_1;
     set exemple ;
     do i=1 to length(text);
      char=upcase(char(text, i));
      output;
     end;
     drop i;
    run;     
     
    proc freq data=exemple_1 order=freq noprint;
    by text notsorted ;
    tables char /out=out_freq(drop=percent) ;
    run;     
    Bon courage
    Ward

Discussions similaires

  1. Compter le nombre de caractères dans une chaine
    Par Delabrfi dans le forum Langage
    Réponses: 2
    Dernier message: 11/03/2014, 21h28
  2. Compter le nombre de 'e' dans une chaine de caractère.
    Par vital_net dans le forum Général Python
    Réponses: 7
    Dernier message: 11/11/2009, 18h33
  3. Réponses: 1
    Dernier message: 13/05/2009, 13h49
  4. Réponses: 4
    Dernier message: 04/03/2009, 10h18
  5. Compter le nombre de caractere dans une chaine
    Par jmjmjm dans le forum C++
    Réponses: 13
    Dernier message: 19/11/2006, 11h37

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