假设我们有以下带有列名“id”,“time”和“x”的数据:
仍未解决的是重复方面的问题。期望的输出应如下所示:
感谢您的帮助。事先感谢。
df<-
structure(
list(
id = c(1L, 1L, 1L, 2L, 2L, 3L, 3L),
time = c(20L, 6L, 7L, 11L, 13L, 2L, 6L),
x = c(1L, 1L, 0L, 1L, 1L, 1L, 0L)
),
.Names = c("id", "time", "x"),
class = "data.frame",
row.names = c(NA,-7L)
)
每个id都有多个时间和x的观测值。我想提取每个id的最后一个观测值,并形成一个新的数据框,根据原始数据中每个id的观测次数重复这些观测值。使用以下代码可以提取每个id的最后一个观测值:
library(dplyr)
df<-df%>%
group_by(id) %>%
filter( ((x)==0 & row_number()==n())| ((x)==1 & row_number()==n()))
仍未解决的是重复方面的问题。期望的输出应如下所示:
df <-
structure(
list(
id = c(1L, 1L, 1L, 2L, 2L, 3L, 3L),
time = c(7L, 7L, 7L, 13L, 13L, 6L, 6L),
x = c(0L, 0L, 0L, 1L, 1L, 0L, 0L)
),
.Names = c("id", "time", "x"),
class = "data.frame",
row.names = c(NA,-7L)
)
感谢您的帮助。事先感谢。