Как я могу оценить значение в строке и значение ниже его, используя dplyr? - PullRequest
0 голосов
/ 01 декабря 2018

У меня есть это df:

library(dplyr)

x <- c("aa1","aa1","bb1","bb1","cc1","cc1")
y <- c(1,2,1,2,1,2)
df <- data.frame(y,x)

И это выглядит так:

  y   x
1 1 aa1
2 2 aa1
3 1 bb1
4 2 bb1
5 1 cc1
6 2 cc1

Как я могу, используя пакет dplyr (mutate), оценить, имеет ли строка нижето же значение, что и для результата, подобного следующему:

  y   x     z
1 1 aa1  TRUE #Comparing from column x the 1st entry vs the 2nd one
2 2 aa1 FALSE #Comparing from column x the 2nd entry vs the 3rd one
3 1 bb1  TRUE #Comparing from column x the 3rd entry vs the 4th one
4 2 bb1 FALSE #...
5 1 cc1  TRUE #...
6 2 cc1 FALSE #...

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

Возможно, вы даже сможете использовать базу R с

duplicated(df$x, fromLast = TRUE)
0 голосов
/ 01 декабря 2018

Функция, которую вы ищете, является ведущей:

 mutate(df, z=x==lead(x))

Обратное, кстати, равно lag()

Почему вы хотите это знать, кстати?Я подозреваю, что все, чего вы хотите достичь, можно сделать с помощью group_by()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...