Annonce

Bienvenue sur le site support de mes ouvrages d'introduction à SAS

La 4ème édition de mon ouvrage est disponible depuis le 11 avril 2019 !

Où trouver cet ouvrage ?


#1 24-01-2019 12:16:33

SAS-SR
Administrateur
Lieu: Université d'Orléans
Date d'inscription: 01-09-2008
Site web

[archive] renommer des variables

ça faisait un petit moment que je ne vous avais rien proposé...

bon, je vais me rattraper...

voici un petit exercice tiré d'un problème de la vie réelle... (mes étudiants de M2 vous le confirmeront)

vous disposez d'une table dans laquelle les noms de variables ont vraiment été très mal attribués.

Ces variables sont pourtant présentées dans la table dans un ordre qui lui, a du sens...

Cette table contient 62 variables. il faudrait que la première s'appelle R1, que la seconde s'appelle S1 et la troisième T1.
Ensuite, on reprend le cycle R/S/T : la 4ème variable soit s'appeler R2, la cinquième S2, la sixième T2 etc.. jusqu'à R20, S20 et T20.

20*3=60 et les 61 et 62ème variables ?

elles ne servent à rien, vous pouvez les supprimer.

Trouvez une programmation qui va vous permettre de modifier le nom de vos variables. Bien entendu, il n'est pas question de d'écrire "à la main" vos remplacements !

Code:

proc datasests;
    modify test ;
    rename quidam=R1
                peius=S1
                raris=T1

etc...

voici le programme qui crée la table avec laquelle vous allez pouvoir vous amuser :

Code:

data test(drop=i j);
array v(*) quidam peius raris morem miscere obiecti ad amphitheatrali haec in latrociniis bella orientem
cladibus oppidum occultis perduelles proruperunt diu saepeque sunt Quibus erigentes alente Namque
usitatum adulescentem gravia excursibus quibus est praedatricibus pacari ut ex et motibus quod saepe
tamen sola feris vehementer capiti spiritus pernicies audaciam consortes apud hac perciti
indignitate sane inopinis praeter cuncta Pisidiae adfligebat diversis spectaculo iactitabant eorum
inrequietis ;
   do i=1 to 10;
      do j=1 to dim(v);
         v(j)=ceil(ranuni(123)*10);
      end;
      output;
   end;
run;

une fois la table créée, vous n'avez pas le droit d'utiliser, dans votre programme, la liste des variables en la copiant/collant du programme qui crée la table.

amusez vous bien

Ce sujet est maintenant archivé - seuls les utilisateurs inscrits de www.sas-sr.com peuvent consulter l'intégralité du sujet et les réponses aux questions posées.
pour vous identifier, suivez ce lien
pour vous inscrire, suivez ce lien

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB
Traduction par FluxBB.fr
Flux RSS