【发布时间】:2019-09-04 21:31:39
【问题描述】:
我正在尝试对数据框进行子集化,以仅保留两个变量的值与先前保留的行的值不同的行。
从
开始df<-structure(list(x = c("ARM018", "ARM018", "ARM018", "ARM021",
"ARM021"), y = c("ARF014", "ARF027", "ARF028",
"ARF014", "ARF020")), class = "data.frame", row.names = c(NA,
-5L))
df
我想获得
df_wanted <-structure(list(x = c("ARM018", "ARM021"), y = c("ARF014",
"ARF020")), class = "data.frame", row.names = c(NA, -2L))
df_wanted
因为 x 和 y 的值在两行中都不同
我曾假设 dplyr 包中的 lag 函数可以提供帮助
并且以下代码将返回 df_wanted 但它确实返回了预期的结果
library(dplyr)
df_attempt<-df %>%
filter(lag(x)!=x & lag(y)!=y)
有没有什么方法可以使用 lag 函数解决这个问题?
【问题讨论】: