Forum de Statistiques
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Les posteurs les plus actifs de la semaine
Aucun utilisateur

-20%
Le deal à ne pas rater :
PNY – Disque SSD Interne – CS900 – 480Go – 2,5″
39.99 € 49.99 €
Voir le deal

Comment annuler un "where"

2 participants

Aller en bas

Comment annuler un "where" Empty Comment annuler un "where"

Message par zezima Mer 14 Déc 2016 - 15:48

Bonjour,

J'aimerais lancer une condition qui diffère pour chaque table dans une macro.

Exemple :
Code:

%macro where(in,out,var,condition);
data &out.;
set &in.;
log_&var.=log(&var.);
where &condition.;
run;
%mend;
%where(tab_in,tab_out,cholesterol,"age>10")

Cependant, il y a certaines tables où je n'ai aucune condition et j'aimerais annuler le "where", comme si la ligne n'existait pas.

Connaissez-vous une astuce pour ne pas bloquer le code lorsqu'il n'y a aucune condition à préciser ?

Merci d'avance.
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Comment annuler un "where" Empty Re: Comment annuler un "where"

Message par niaboc Mer 14 Déc 2016 - 16:29

Salut,

tu peux essayer ça :


Code:
%macro where(in,out,var,condition);

   data &out.;
      set &in.;
      log_&var.=log(&var.);
      %if &condition. ne %then %do;
         where &condition.;
      %end;
   run;

%mend;

%where(tab_in,tab_out,cholesterol,age>10)



Niaboc
niaboc
niaboc

Nombre de messages : 996
Age : 35
Localisation : Paris
Date d'inscription : 05/05/2008

Revenir en haut Aller en bas

Comment annuler un "where" Empty Re: Comment annuler un "where"

Message par zezima Jeu 15 Déc 2016 - 14:07

Génial ! (et tellement évident au final)

Merci Smile
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Comment annuler un "where" Empty Re: Comment annuler un "where"

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum