a=c("A","A,B","C","B,C")
b=c(1,2,3,4)
dat<-data.frame(a,b)
c=c("A","B","D","A")
d=c(5,6,7,8)
g<-data.frame(c,d)
我想比較dat和g。如果dat列a中的元素與g中列c的元素相匹配,則g中列d的匹配項應添加到dat中。將strsplit逐行應用並將列添加到數據
dat$NEW =""
sapply(strsplit(as.character(dat$a), ","),function(x){tmp=grep(x,g$c);dat$NEW=x)
我怎樣才能讓:在DAT $ NEW
g[grep("A",g$c),]
c d
1 A 5
4 A 8
條目應該看起來像 「5,8」?
感謝您的回覆,但是我在dat中丟失了命中「B」的數字「A,B」 – Jasmine