我有以下称为 gg 和 yy 的数据。
> str(gg)
num [1:1992] 128 130 132 185 186 187 188 189 190 191 ...
> str(yy)
'data.frame': 2103 obs. of 2 variables:
$ grp : num 128 130 132 185 186 187 188 189 190 191 ...
$ predd: num -0.963 -1.518 1.712 -11.286 -8.195 ...
>
您会注意到 gg 的前几个值与 yy 的前几个值匹配。
如果值 yy$grp 与 gg 中的任何值匹配,我想从 yy 中选择行。问题是 gg 和 yy 的长度不等。此外,有些 gg 的值在 yy$grp 中不存在,还有一些 yy$grp 的值在 gg 中不存在。
我似乎无法让它工作。它基本上是基于我提到的索引值(gg 或 yy$grp)的两个数据集的交集。
我试过了:
inters<-intersect(gg,yy$grp)
yyint<-yy[yy$grp==inters,]
但得到以下
Warning message:
In yy$grp == inters :
longer object length is not a multiple of shorter object length
> str(yya)
'data.frame': 28 obs. of 2 variables:
$ grp : num 128 130 132 185 186 187 188 189 190 191 ...
$ predd: num -0.963 -1.518 1.712 -11.286 -8.195 ...
至少按照我的计划,yya 应该更长。
谢谢。