【发布时间】:2014-11-12 16:36:41
【问题描述】:
我试图在一个数据框中找到那些出现在另一个数据框中的行。
df1 <- data.frame(V1=c(0,1,1,1), V2=c(0,1,0,2))
df2 <- data.frame(V1=c(0,1), V2=c(0,1))
in_df(df1, df2) # should yield c(T, T, F, F)
有计算这个的函数吗?
【问题讨论】:
标签: r
我试图在一个数据框中找到那些出现在另一个数据框中的行。
df1 <- data.frame(V1=c(0,1,1,1), V2=c(0,1,0,2))
df2 <- data.frame(V1=c(0,1), V2=c(0,1))
in_df(df1, df2) # should yield c(T, T, F, F)
有计算这个的函数吗?
【问题讨论】:
标签: r
试试
as.character(interaction(df1)) %in% as.character(interaction(df2))
#[1] TRUE TRUE FALSE FALSE
【讨论】:
有一个duplicated.data.frame方法可以和rbind结合使用:
in_df <- function(d1,d2) duplicated(rbind(d2,d1))[-(1:nrow(d2)) ]
in_df(df1, df2)
#[1] TRUE TRUE FALSE FALSE
【讨论】: