|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 31 ![]() |
Bonjour,
J'ai besoin de calculer un délais entre deux dates , sauf que je me retrouve avec des dates sous format charactères "UK/05/1998" (avec uk : unknown), en gros je me retrouve avec des dates sans jour indiqué. Quand je transforme ces dates en format sas ça me donne des dates manquantes.C'est dommage de perdre l'information alors que c'est juste le jour qui me manque. Avez des solutions à me proposer? Je sais que SAS considère jour=15 si le jour est manquant? mais comment? Merci d'avance pour votre aide |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() |
tu peux remplacer UK par 15 en utilisant la fonction tranwrd
__________________
Consultez les FAQs et les anciens postes avant de poser vos questions. Merci
|
|
|
10
|
|
|
#3 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
|
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 31 ![]() |
Merci Bahraoui.
Pour : Je sais que SAS considère jour=15 si le jour est manquant? En fait c'est une amie qui me l'a dit et moi je n'ai jamais été affronter à ce cas et je ne trouve pas de documentation là dessus!! Depuis tout à l'heure je me prend la tête avec cela, mais vu que ça vous surprend donc cela n'existe pas Donc si le jour est manquant dans une date , pour la transformée en date SAS ,SAS considère toute la date est manquante? |
|
|
00
|
|
|
#5 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Oui, pour autant que je sache, une date incomplète est manquante dans SAS.
La solution de Bahraoui est parfaite : Code :
dateOK = INPUT(TRANWRD(dateTxt,"UK","15"), DDMMYY10.) ; |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 31 ![]() |
Merci beaucoup pour votre aide.
Je vais me permettre de poser une autre question. Un autre cas de figure se présente, vu que j'ai les dates saisies en trois colonnes jour, mois, années. obs jour mois année 1 uk uk 2005 2 uk uk 2008 3 uk 02 2003 ...... Est-ce que je peux transformer uniquement l'année en format SAS et calculer un délais entre deux années? (cas d'obs 1 et 2) Pour le cas que j'ai que le mois et l'année , de tout transformer en mois ? désolée pour toute ces questions , mais on me dit que c'est dommage de ne pas utiliser les dates dont on dispose puisque SAS les considère manquantes alors qu'on a au moins l'année renseignée. |
|
|
00
|
|
|
#7 |
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 012 ![]() |
Hello;
dans ce cas tu importe en numérique; 1- si opération sur l'année tu fais année2 - année1 2- si opération sur les mois: bah tu multiplie tes années X12 et t'additionnes avec la colonnes mois et au final tu fais une soustraction comme dans le cas 1. PS: Merci d'ouvrir un nouveau poste et mettre le précédent en résolu. Si la réponse de Bahraoui et olivier.decourt t'ont permet à résoudre ton problème. |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 31 ![]() |
Merci pour votre réponse
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com