根据R中的另一个向量/列表/数据帧对数据帧进行子集设置

时间:2020-05-20 05:50:39

标签: r

代码 1。 subset(df3, df.check$BREDS %in% df3$BREDS) 2。 df3[(df.check$BREDS %in% df3$BREDS),] 3。 df3 %>% filter(df.check$BREDS %in% df3$BREDS)

错误:必须具有有效下标向量的子集行 i逻辑下标必须与索引输入的大小匹配。 x输入的大小为27204,但是下标i的大小为8。

1 个答案:

答案 0 :(得分:0)

%in%返回LHS长度的输出。例如,参见

1:10 %in% 1:4
#[1]  TRUE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE FALSE
1:4 %in% 1:10
#[1] TRUE TRUE TRUE TRUE

因此,如果您在所有尝试中都颠倒了参数,那么您应该得到想要的东西。

1)

subset(df3, BREDS %in% df.check$BREDS)

2)

df3[df3$BREDS %in% df.check$BREDS,]

3)

library(dplyr)
df3 %>% filter(BREDS %in% df.check$BREDS)