Programmation [SAS]

delfyne Messages postés 2 Statut Membre -  
 anaa -
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   Statut Membre Dernière intervention   50
 
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
Souleymane
 
Bonjour,
je demande où est ce que je peux télécharger le logiciel SAS gratuitement.
0
NAT
 
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
Sonya
 
0
anaa
 
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
anaa
 
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