Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > Débutez
Débutez Forum concentrant les premières questions que l'on se pose en tant que débutant
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/05/2011, 18h12   #1
Membre à l'essai
 
Inscription : novembre 2009
Messages : 107
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 107
Points : 20
Points : 20
Par défaut Creation d une variable a partir de 2 variables

* Bonjour, *

voila mon problème

Dans une variable que l on appellera A
A prend pour valeur "+" si D0>=10 et D0/D21>=4 ou si
+ si D0<10 et D21>=40 (D0 et D21 sont des valeur numérique différent de 0 et quandd il n y a pas de valeur il y a .)
et donc "-" dans tous les autres cas.

La j ai vraiment pas d'idée de code ou d'algo

PS je fais des exercices que je réalisais sous R avec SAS via SAS afin de me familiariser avec le logiciel afin d'obtenir un job un jour.

Merci de votre aide ( j ai lu deux livres et un cours en ligne avant de venir et revenir vers vous) et je préfère ce mode c est me permet de mieux comprendre les différentes facette du logiciel

* Merci *
asty69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2011, 18h30   #2
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Bonjour,

Une solution (il y a plusieurs façons de le programmer):

Code :
1
2
3
4
5
6
DATA NOUVEAUJEU;
SET ANCIENJEU;
A="-";
IF (D0 ne . AND D21 ne .) AND ((D0>=10 AND D0/D21>=4) OR (D0<10 AND D21>=40))
      then A="+";
run;
Manoutz est actuellement connecté   Envoyer un message privé Réponse avec citation 20
Vieux 23/05/2011, 18h57   #3
Membre à l'essai
 
Inscription : novembre 2009
Messages : 107
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 107
Points : 20
Points : 20
merci
asty69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 15h50   #4
Membre à l'essai
 
Inscription : novembre 2009
Messages : 107
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 107
Points : 20
Points : 20
Par défaut question diverse sur ce probleme

j aimerai savoir si à la place des "-" et des "+" je met des "1" ou "0"
je change quoi dans le code ?
meme question avec "a" et "b"

autre question subjidiaire

si je veux les "." ne soit pas considere cest a dire que lorque qu il a pas de donnée numerique il y a rien qui sort
asty69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 16h30   #5
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 006
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : février 2011
Messages : 1 006
Points : 1 703
Points : 1 703
Code :
1
2
3
4
5
6
7
8
9
10
11
 
DATA tableB;
SET tableA;
 
IF var='-' then var='0';
IF var1= '+' then var1='1';
.
.
.
;
run;

aprés pour ta deuxième question, je ne sais pas ce que tu veux dire par RIEN QUI RESORT.
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 16h39   #6
Membre à l'essai
 
Inscription : novembre 2009
Messages : 107
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 107
Points : 20
Points : 20
Citation:
Envoyé par Manoutz Voir le message
Bonjour,

Une solution (il y a plusieurs façons de le programmer):

Code :
1
2
3
4
5
6
DATA NOUVEAUJEU;
SET ANCIENJEU;
A="-";
IF (D0 ne . AND D21 ne .) AND ((D0>=10 AND D0/D21>=4) OR (D0<10 AND D21>=40))
      then A="+";
run;
rajouter une condition
IF D0=. and D21=. then A=" "

ca serait juste?
asty69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 16h43   #7
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Citation:
Envoyé par asty69 Voir le message
rajouter une condition
IF D0=. and D21=. then A=" "

ca serait juste?
Tu testes, et en ouvrant la table tu verras bien si ça marche ou pas
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h58.


 
 
 
 
Partenaires

Hébergement Web