|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
Bonjour,
j'ai un petit soucis avec sas.. j'ai essayé pas mal de truc mais sans succès Voici le lien vers mon tableau excel : http://www.toofiles.com/fr/oip/docum...xemplesas.html Pour créer les variables "sit", on a utilisé le mois de décembre de chaque année. 0=pas chômage et 1=chômage. datins=dat d'inscription au chômage. datann=date de sortie du chômage. Je souhaite créer des variables pour chaque année et pour chaque ligne qui mettent 1 quand l'individu est au chômage, 0 s'il n'est pas au chômage et "." quand la séquence ne concerne pas l'année décrite par la variable. POur vous aider à comprendre voici ce que je souhaite avoir : http://www.toofiles.com/fr/oip/docum...emplesas2.html J'ai essayé de faire cela avec une boucle do mais tout ne marche pas.. En fait, j'arrive à mettre les points mais pas pour les séquences passées. Merci pour votre aide |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() |
Bonjour,
Est ce que c'est possible d'envoyer le code SAS? Merci. |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
oui bien sûr, le voilà.. il doit y avoir plein de fautes dsl
Code :
|
||
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Bonjour,
Désolé mais je ne vois pas trop ce que tu veux faire? A quoi correspondend tes essais de macros? A quoi correspondend tes variables sit? Dans ton exemple : date inscription = 200309 date fin chomage = 200312 =>sit97=1, sit98=0, sit03=1 ???? |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
j'essaye d'obtenir le tableau n°2 que j'ai mis (voir lien) d'où mes essais..
Les variables sit correspondent aux situations des individus pour chaque année ces variables sont creér grâce à la datins et la datann (date d'inscirption et d'annulation au chômage). On prend décembre de chaque année. je voudrais faire en sorte que des points apparaissent pour chaque variable sit98 sit 99,... idx datins datann sit97 sit98 sit99 .... 180 199906 200011 0 0 1 180 197705 199809 1 0 0 notre individu a été au chômage en 1997, pas en 1998 car vuq u'on prend en décembre 1998. En 1999 il a été au chômage mais pas en 2000. ce que je voudrais avoir c'est ça : idx datins datann sit97 sit98 sit99 .... 180 199906 200011 . . 1 180 197705 199809 1 0 . Tu comprends mieux?? car c'est pas facile à expliquer lol |
|
|
00
|
|
|
#6 | ||
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Ton programme m'a l'air bon sauf que tu peux tous mettre dans ton data :
Code :
|
||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
le problème est qu'il me faut une valeur par année (dans les variables sit98,sit99...). comme dans l'exemple que je te met là :
http://www.toofiles.com/fr/oip/docum...emplesas2.html et moi j'obteins cela : http://www.toofiles.com/fr/oip/docum...emplesas3.html |
|
|
00
|
|
|
#8 | ||
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Tu as donc clairement un problème de logique dans tes IF, je te conseille de les re-vérifier!!
D'ailleurs au lieu d'en faire pleins, tu devrais tous regrouper dans un seul if vu que tout tes if se basent sur les mêmes champs date inscription et date annulation. Code :
|
||
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
oui je vois bien que c'est un pb logique c'est là tout le pb loll..
j'ai revérifié mais sans succès... Je vais encore vérifier.. on ne sait jamais.. |
|
|
00
|
|
|
#10 | ||
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Pour résoudre un problème logique il faut décomposer son problème clairement et évaluer les différents cas de figure.
Par exemple tu sais déjà que ta date d'inscription est toujours inférieure à ta date d'annulation. Donc ton premier niveau va être la date d'inscription et ton second niveau ta date d'annulation (dont je n'ai pas bien compris personnellement le sens) Code :
Bon courage |
||
|
|
00
|
|
|
#11 | ||
|
Membre Expert
![]() ![]() |
Code :
|
||
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() ![]() |
Voir fichier joint
|
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
Merci pour les réponses, c'est sympa..
Par contre, en faisant tout ça , je me suis aperçue d'un autre problème.. Je vous le montre sur cet exemple car pas facile de l'expliquer http://www.toofiles.com/fr/oip/docum...classeur1.html |
|
|
00
|
|
|
#14 | |||
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
Citation:
le 0 correspond pas au chômage et le "." la séquence ne correspond pas à l'année intérrogée par la variable. Par exemple, si la variable créee est ch98 et que la séquence correspond à une inscription au chômage entre juin 97 et sept 97 dans ce cas la variable ch98 doit être renseignée par . dsl mais ça n'est pas facile à expliquer.. |
|||
|
|
00
|
|
|
#15 |
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Et pour savoir si l'individu n'est au chômage (valeur 0) as-tu une information te permettant de savoir s'il travaille, ..., en gros comment fais-tu pour affirmer qu'il ne travaille pas pendant une période donnée?
|
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Chargée d'études Inscription : mars 2008 Messages : 42 ![]() |
Nous avons la date d'entrée au chômage et celle de sortie.
|
|
|
00
|
|
|
#17 |
![]() ![]() Inscription : septembre 2006 Messages : 1 973 ![]() |
Donc j'en reviens toujours à la même question comment fais tu à partir de ces deux dates pour avoir ton 0:
Si par exemple la personne est inscrite le 18/10/1997 et annule son inscription le 15/05/2002. Alors sit97=1, sit98=1,sit99=1,sit00=1,sit01=1. Que valent alors sit95,sit96,sit02,sit03??? |
|
|
00
|
|
|
#18 | ||||||||||
|
Candidat au titre de Membre du Club
![]() Inscription : mars 2008 Messages : 13 ![]() |
Bonjour,
Je te propose l'approche suivante. A toi ensuite d'adapter avec ta définition (.,0,1) et avec la mise en forme que tu souhaites (un proc transpose devrait suffir). - Tu verras notamment que j'ai ajouté la possibilité d'avoir des valeurs manquantes dans tes données. - J'ai aussi utilisé la fonction MDY pour travailler avec des dates plus facilement. - J'ai utilisé 2 macro-variables pour définir une boucle par année. Véronique La référence SAS, blog pour se former au SAS www.sasreference.fr Créer un jeu de donnée pour illustrer l'exemple Code :
Code :
Code :
Code :
Code :
|
||||||||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com