Bonjour,
Je suis nouveau sur le forum mais je le consulte très souvent et je trouve toujours ce que je recherche sauf cette fois.
En effet, j'ai besoin d'utiliser le logiciel SAS au boulot ce qui n'est pas nouveau pour moi mais je n'ai jamais eu besoin de beaucoup créer de programme donc j'ai un petit problème peut être tout bête mais je ne sais pas faire référence à une ligne inférieur à celle de la ligne de référence dans une même colonne.
Je vais illustrer ce n'est sans doute pas clair du tout :
Table resume
Identifiant pays date métier
123 Fr 2016 Vendeur
123 Ru 2015 Vendeur
246 Fr 2016 Manager
En fait, si pour un même identifiant, le métier est vendeur alors je souhaite remplacer Ru par Fr.
En gros, si une personne est vendeur (uniquement), je veux qu'il soit considéré comme étant employé dans le même pays sur toute les périodes et que ce pays soit le plus récent.
J'ai trié ma table dans l'ordre croissant des identifiants et décroissant des dates avec un proc sort et puis gros bug je ne sais pas dire à SAS de comparer deux lignes et de corriger des valeurs selon mes conditions. Je crois que je dois créer des macro variables et mettre les valeurs des colonnes identifiants, pays, date et métier en variable mais je n'ai jamais utilisé de macro variable surtout que j'ai des milliers de lignes.
Par avance merci même si on ne trouve pas de solution au moins j'apprendrai des choses.
Partager