如何在r中匹配字符串向量和数据帧列
我有一个列向量,如下所示如何在r中匹配字符串向量和数据帧列,r,R,我有一个列向量,如下所示 a = "ASDRT" "GTYHE" "AQWER" QWERT" ID. Amount SDFGH. 45 ASDRT. 67 AQWER. 88 TYUIIO. 543 QWERT. 32 我有一个如下的数据框架 a = "ASDRT" "GTYHE" "AQWER" QWERT" ID.
a = "ASDRT" "GTYHE" "AQWER" QWERT"
ID. Amount
SDFGH. 45
ASDRT. 67
AQWER. 88
TYUIIO. 543
QWERT. 32
我有一个如下的数据框架
a = "ASDRT" "GTYHE" "AQWER" QWERT"
ID. Amount
SDFGH. 45
ASDRT. 67
AQWER. 88
TYUIIO. 543
QWERT. 32
我想将向量值与dataframe的ID列匹配,如果存在匹配,它将打印1或0
期望输出
ID. Amount. Match
SDFGH. 45. 0
ASDRT. 67. 1
AQWER. 88. 1
TYUIIO. 543. 0
QWERT. 32. 1
如何在R中执行此操作?我们可以使用
sub
删除结尾处的
,在%中使用%in%来获取逻辑向量
,将其强制为二进制,使用as.integer
来创建“匹配”列
df1$Match <- as.integer(sub("\\.$", "", df1$ID) %in% a)
df1$Match
#[1] 0 1 1 0 1
as.integer(grepl(粘贴0(a,collapse=“|”)和df$ID))