我有两个数据集,我想用一个公共键(字符串)链接(inner_join)。问题在于,在两个数据集中的一个数据集中,密钥不完整,但是另一个密钥中包含了这个不完整的密钥,如以下示例所示:
key for 1st dataset: PV955--075P412171042--
and for the 2nd: PV955--???P412171042--
???
代表缺少的数字,所以我的问题是我们是否可以像字符串比较/包含一样检查我的第二个键的字符是否包含在我的第一个键中,如果是,则对此进行连接?
Idk(如果问题很明显),谢谢您的回答。
答案 0 :(得分:0)
不查看数据很难回答,但是您可以尝试以下操作:
library(stringr)
> str_detect("075P412171042","P412171042")
[1] TRUE
答案 1 :(得分:0)
在带有正则表达式的基数R中:
key1 <- "PV955--075P412171042--"
key2 <- "PV955--???P412171042--"
key2re <- gsub("--...", "--...", key2)
grepl(key2re, key1)
## [1] TRUE
用点代替“-”后的3个未知字符,点表示正则表达式中的任何字符。 然后grepl检查两个字符串是否匹配。