转租数据框并面对错误消息“'=='仅为同等大小的数据帧定义”

时间:2018-04-09 00:07:47

标签: r dataframe

我想制作数据框的子集,并且必须使用我在下面指定的方法。 我的数据如下:

NameA   NameB   NameC   Num1   Num2
  A       E       I       1      1 
  B       F       J       5      8 
  C       G       K       6      6 
  D       H       L       8      8  

我必须使用的代码是:df1<- df[df[Num1] == df[Num2]]

但是,每次运行上面的代码时,我都会收到错误信息

Error in Ops.data.frame(df[Num1],df[Num2]) : ‘==’ only defined for equally-sized data frames

有什么办法可以解决这个错误吗? (我无法改变这样做的方法)。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您必须选择Num1 == Num2

的行
df1 <- df[df$Num1 == df$Num2,]

您也可以使用过滤器

library(dplyr)  
df1 <- df %>%
       filter(Num1 == Num2)