Encore une question bête...
Quelle est la syntaxe de :
si var(i)=var(i+1)?
J'ai essayé var=var+ mais ça ne marche pas (et je voudrais éviter les boucles!!!!)...
Encore une question bête...
Quelle est la syntaxe de :
si var(i)=var(i+1)?
J'ai essayé var=var+ mais ça ne marche pas (et je voudrais éviter les boucles!!!!)...
Si je comprend bien ta question, tu veux vérifier qu'une observation i a la même valeur que l'observation suivante i+1 pour la variable var ?
Sous SAS, ce n'est pas faisable, en revanche tu peux comparer avec l'observation précédente i-1 (ou i-n), avec la fonction lag. Mais si tu tries en ordre inverse ta table, ça revient à comparer à i+1.
Exemple d'utilisation de la fonction lag :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 data test ; var = 1 ; output ; var = 1 ; output ; var = 1 ; output ; var = 2 ; output ; var = 3 ; output ; var = 3 ; output ; var = 3 ; output ; var = 4 ; output ; var = 4 ; output ; run ; data test2 ; set test ; length compare $5 ; if _N_ = 1 then compare = "N/A" ; if _N_ > 1 then do ; if var = lag(var) then compare = "IDEM" ; else compare = "dif" ; lag_var = lag(var) ; end ; putlog _N_= @10 var= @20 lag_var= @35 compare=; run ;
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager