Programmation [SAS]
delfyne
Messages postés
2
Statut
Membre
-
anaa -
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.
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
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.
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.
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
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