R 删除纵向数据中的单一事件
我正在处理纵向数据。我想删除只测量过一次的人的观察结果(下面的ID5,7,9)。我该怎么做?假设id是数据集中人员的唯一标识符。因此,我希望删除与ID5、7和9相关的观察结果。我在plyr中使用了复制、唯一、表函数和计数函数,但没有成功。下面是示例数据R 删除纵向数据中的单一事件,r,count,dataframe,plyr,R,Count,Dataframe,Plyr,我正在处理纵向数据。我想删除只测量过一次的人的观察结果(下面的ID5,7,9)。我该怎么做?假设id是数据集中人员的唯一标识符。因此,我希望删除与ID5、7和9相关的观察结果。我在plyr中使用了复制、唯一、表函数和计数函数,但没有成功。下面是示例数据 y<-sample(1:10, 20, replace=TRUE) x<-sample(c(0,1),20, replace=TRUE) id<-c(1,1,1,2,2,2,3,3,3,4,4,4,5,6,6,7,8,8,8,9
y<-sample(1:10, 20, replace=TRUE)
x<-sample(c(0,1),20, replace=TRUE)
id<-c(1,1,1,2,2,2,3,3,3,4,4,4,5,6,6,7,8,8,8,9)
data<-data.frame(cbind(y,x,id))
y如果您将帖子标记为R
,data.frame
这里是代码>“非”功能用于删除与值c(5,7,9)
显然,这只是一个样本数据集。上面的解决方案将是非常乏味的1000次观测。
> data[!data$id %in% c(5,7,9),]
y x id
1 3 0 1
2 2 1 1
3 3 0 1
4 9 0 2
5 9 0 2
6 1 0 2
7 9 0 3
8 7 0 3
9 4 0 3
10 9 1 4
11 7 0 4
12 8 1 4
14 4 1 6
15 1 0 6
17 2 0 8
18 8 0 8
19 2 0 8