Programmation [SAS]

Fermé
delfyne Messages postés 2 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 22 août 2007 - 13 mars 2007 à 09:30
 anaa - 30 juin 2008 à 15:21
Bonjour,
j'utilise SAS pour faire mes statistiques descriptives, et je rencontre un problème pour une colonne de données numériques: par exemple, les données sont de la forme: 30DEC1899:04:46:54 et ce que je veux, c'est extraire à partir du10ème caractère, pour n'avoir que 04:46:54.

j'ai essayé avec la fonction "substr" mais cela ne marche pas; je pense que c'est parce que ce n'est pas une chaine de caractère.
pouvez vous m'aider svp? et faut il mettre cette instruction dans une étape data?
merci par avance;
delf.

3 réponses

hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 50
13 mars 2007 à 16:05
salut,
Oui c'est normal car c'est une variable en format datetimew. (voir tous les formats date et time dans SAS) et non une chaine de carateres. Une façcon peut etre de faire est de calculer l'horaire avec la fonction time(ta_variable_date) et de lui do donner le format time. (le format d'ecriture que tu veux). Il y a certainement d'autres façcons pour régler ce probleme, dis moi si çca marche, sinon on essaiera autres choses.
0
Bonjour,
je demande où est ce que je peux télécharger le logiciel SAS gratuitement.
0
bonjour,
j'ai un problème concernant le logiciel SAS. Je voudrais écrire ceci :
if DP in ("C00%" "C01%" "C02%" "C03%" "C04%" "C05%" "C06%" "C07%" "C08%" "C09%" "C10%" "C11%" "C12%"
"C13%" "C14%" "C462") then do;
Mais forcément je ne peux pas mettre de % dans une fonction "in", donc cette ligne de programmation est fausse.
Je ne peux pas mettre de like non plus car je crois ke l'on ne peut pas dans une fonction if.
Auriez vous une solution à mon problème?
Merci beaucoup par avance

Nat
0
0
j'ai pas bien compris ton programme:
tu regarde juste les 3 premiers de ta variable est ce que c 'est bien ca?? dis moi ce que tu veux faire je peux peut être t'aider
0
tu mets substr(DP,1,3) in ('C00' 'C02' ) then do

voila je ne sais pas si j'ai bien répondu à ta qst ou pas
0