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 :

Reorganiser des valeurs numériques selon son envie


Sujet :

SAS Base

  1. #1
    Membre à l'essai
    Homme Profil pro
    etudiant
    Inscrit en
    Juillet 2016
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : etudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2016
    Messages : 32
    Points : 20
    Points
    20
    Par défaut Reorganiser des valeurs numériques selon son envie
    Bonjour à tous,

    Je débute sur ce forum. Ne m'en voulais pas si je ne suis pas clair et n'hésitez pas à me demander plus de détails.

    Je souhaiterais créer un tableau de suivi budgétaire par SAS, allant directement chercher ses valeurs dans le Systeme. Pour le moment tout va bien..

    Cependant mon tableau doit se présenter selon son numéro de compte en horizontal, et selon la date et le solde. (ça peut parraitre complexe, je me suis donc permis de joindre une image de mon tableau.)
    Nom : tableau final.png
Affichages : 233
Taille : 10,2 Ko

    Du coup, je voulais savoir comment faire pour trier mes table par numero de compte tout en choisissant l'ordre de ces valeurs. (Encore une fois une image vaut mieux qu'un simple texte )
    Mon tableau doit vraiment etre sortis sous un ordre précis malheuresement, et ne peut me suffire avec un ordre croissant (la simplicité n'existe pas ^^)
    Nom : trié par num de compte.png
Affichages : 175
Taille : 4,1 Ko

    Si quelqu'un pourrait me faire part de ses connaissances je serais aux anges... Merci beaucoup

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Mars 2013
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2013
    Messages : 48
    Points : 63
    Points
    63
    Par défaut Transformation des variables
    Bonjour,

    Moi je te propose de transformer tes variables en caractères en effet 68 sera toujours supérieur à 67 peu importe le nombre de chiffre que tu mets derrière. Donc 68 est par exemple supérieur 678888.

    Si je reprends tes données en triant par numéro de compte et valeur j'obtiens le résultat que tu veux.

    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 NumCompte $ valeur $; 
    cards;
    6 67
    67 68
    68 6685
    66 675
    675 688886
    688886 6622
    6685 6762
    6762 6
    6622 67888
    67888 66
    ; 
    run; 
     
    proc sort data=test out=test2 ; 
    	by numcompte valeur; 
    run;
    N'oubliez pas de cliquer sur résolu si votre problème est résolu .

  3. #3
    Membre à l'essai
    Homme Profil pro
    etudiant
    Inscrit en
    Juillet 2016
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : etudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2016
    Messages : 32
    Points : 20
    Points
    20
    Par défaut
    Bonjour et merci pour la réponse "Je_débute_en_sas"

    Je pense m'être mal exprimé...

    Sur la table test2 que tu créer, je souhaiterais que ce soit cet cette colonne qui soit réorganisé.
    En effet, l'affichage se fait selon le numéro de compte par ordre croissant et donc affiche : 6/66/6622/6685/67/ect...
    Je voulais savoir si on pouvait contourner le BY pour lui demander d'afficher selon un ordre créé par nous même?

    Sur ton exemple, le 68 en premier (suivi de ses déclinaisaons-->688886), le 67 en second (toujours avec ses déclinaisons), ect...

    En tout cas merci du coup de main, et j'espere avoir été un peu plus clair...

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Mars 2013
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2013
    Messages : 48
    Points : 63
    Points
    63
    Par défaut
    Je ne sais pas ce que tu appelles contourner le BY, mais ce dont je suis sûr c'est que avec le transformation des variables en caractères lorsque je fais le trie j'ai bien l'affichage ordonné par numéro de compte tel que tu l'as mis à savoir 6/66/6622/6685.

    Ci-dessous la table affiché après mon trie qui corresponds exactement à ce que tu mets sur tes exemples.
    Nom : Tab_test2_trie.png
Affichages : 167
Taille : 6,7 Ko
    N'oubliez pas de cliquer sur résolu si votre problème est résolu .

  5. #5
    Membre à l'essai
    Homme Profil pro
    etudiant
    Inscrit en
    Juillet 2016
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : etudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2016
    Messages : 32
    Points : 20
    Points
    20
    Par défaut Solution trouvée
    En effet, je n'avais pas bien compris l'interêt alors que ça pourrait fonctionner je pense.

    Je me suis penché sur un simple proc format, dès qu'il fonctionne je partagerais la solution si quelqu'un veut s'en servir !

    Un grand merci

  6. #6
    Membre à l'essai
    Homme Profil pro
    etudiant
    Inscrit en
    Juillet 2016
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : etudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2016
    Messages : 32
    Points : 20
    Points
    20
    Par défaut solution
    Bonjour a tous,

    comme promis voila la solution que j'ai trouvé pour trier les données (je ne suis finalement pas passé par le proc format :p ) :

    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
    data test&mv_aa. ;
    set test&mv_aa.;
    classcpt="z";
    if nucptpcg in ("65522","6554","655")  then classcpt="a";
    if nucptpcg in ("647","6481","6483","6488","648")  then classcpt="b";
    if nucptpcg in ("631","632","633")  then classcpt="c";
    if nucptpcg in ("60611","60612","60613")  then classcpt="d";
    if nucptpcg in ("613","614","618")  then classcpt="e";
    if nucptpcg in ("6256","6257","625","6261","6262","6263","6264","6268","626","627","6281","6282","6283","6284","6286","6288","628")  then classcpt="f";
    if nucptpcg in ("6351","6378","637")  then classcpt="g";
    if nucptpcg in ("6511", "65183","65388","653","654","658")  then classcpt="h";
    if nucptpcg in ("661","671","678")  then classcpt="i";
     
    run;
    proc sort data=testemerge20&mv_aa. ;by classcpt nucptpcg;run;
    Bonne journée a tous

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

Discussions similaires

  1. [C# 2.0] MaskedTextBox qui ne permet que des valeurs numériques
    Par Mast3rMind dans le forum Windows Forms
    Réponses: 9
    Dernier message: 01/09/2006, 10h33
  2. Meilleur type table pour stocker des valeurs numérique
    Par vodevil dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/04/2006, 20h42
  3. souci avec le format des valeurs numériques.
    Par LESOLEIL dans le forum Langage
    Réponses: 9
    Dernier message: 05/04/2006, 16h12
  4. Trier une colonne avec des valeurs numériques ou textes
    Par jfc dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 07/02/2006, 11h15
  5. [xslt] filtrer des valeurs numériques
    Par yos dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 20/09/2005, 12h01

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