Imaginez que nous avons un ensemble de données appelé df, et que cet ensemble de données se compose de deux variables appelées an et x1:Variables de calcul dans R de valeurs multiples dans la même variable
year <- c(2000, 2001, 2002, 2003, 2004)
x1 <- c(7, 8, 6, 3, 3)
df <- data.frame(year, x1)
Ma tâche consiste à calculer deux nouvelles variables sur x1. La première variable est cSum, qui doit refléter la somme des valeurs de x1 pour les deux dernières années. La deuxième variable est cMax, qui doit refléter les valeurs les plus élevées pour x1 au cours des trois dernières années.
Le résultat devrait être le suivant:
year x1 cSum cMax
2000 7
2001 8 15
2002 6 14 8
2003 3 9 8
2004 3 6 6
Comment puis-je calculer les variables csum et CMAX ci-dessus?
Merci!
est 'transpose' nécessaire, cela permettrait d'atteindre les mêmes ' df [, csum: = (décalage (x1,1, "lag") + shift (x1,2, "lag"))] ' – Bg1850
@ Bg1850 J'allais vraiment ajouter cela, merci de l'avoir signalé. cette approche n'est pas très extensible (en additionnant 10 périodes, par exemple), mais est certainement plus agréable dans ce cas. – MichaelChirico
Oh oui j'ai compris. . – Bg1850