En cherchant comment utiliser les données d'une ligne précédente pour créer une nouvelle variable sur la ligne "+1", j'ai trouvé sur le forum une réponse de 2011 qui fonctionne bien mais je voudrais comprendre comment cela fonctionne pour l'adapter à d'autres situations.
J'ai contacté l'auteur de la réponse mais étant donné le temps écoulé, il ne participe peut-être plus au forum ou a changé d'adresse mail.
Le code proposé était le suivant:
Code : Tout sélectionner
tab <- data.frame(
id = rep(LETTERS[1:3], each = 2),
code = sample(1:6),
mois = sample(1:12))
tab$p.code <- c(NA, tab$code[-length(tab$code)])
tab$nou <- ifelse(tab$mois == 4 & tab$code == 2 & tab$p.code == 1, 1, tab$code)
la seule chose que je ne comprends pas est la raison pour laquelle
Code : Tout sélectionner
tab$code[-length(tab$code)]
renvoie la valeur "code" de la ligne précédente.
Peut-on faire la même chose en sélectionnant la valeur de la ligne situé 2 rangs au dessus? De la ligne suivante...
Merci de vos lumières!
Tài