J'ai un problème très simple. J'essaie de définir la valeur de la colonne x sur 0 si la colonne Y [N,] ne correspond pas à la colonne Y [N-1,]. Mon problème est que je ne sais pas comment faire référence à une valeur de ligne antérieure dans R, puis utilisez cette valeur pour définir la valeur d'une autre colonne.
Comme exemple: p> x [3,2] est 0 parce que y [3,1] ne correspond pas y [2,1]. P> J'ai besoin de trouver essentiellement une instance de cette instance dans un grand jeu de données et définissez la valeur x correspondante sur 0. P> Y a-t-il une solution simple à cela dans R? Cela se sent vraiment comme si cela devrait y être. P> merci p> p>
Data $ x <- 0 si les données $ y $ [n] =! Data $ Y [N-1] CODE> P>
BlockQuote>
3 Réponses :
donné une option serait L'idée est de vérifier si x [ i] - x [i -1] est égal à zéro qui donne un vecteur logique que nous multiplions par diff code> p>
x code> p> p>
De même au poteau de @Markus, avec dplyr code> vous pouvez faire:
Un autre BASE R CODE> OPTION
df <- structure(list(Y = c(1L, 1L, 2L, 2L), X = c(5L, 1L, 0L, 2L)),
class = "data.frame", row.names = c(NA, -4L))
Si l'une des réponses répond à votre problème, veuillez considérer accepter . Merci