将列值的片段与R中的另一列值匹配
我想将原始ID与新ID进行匹配,新ID只是原始ID的一部分,并返回所有原始ID。例如,对于data.frame将列值的片段与R中的另一列值匹配,r,match,R,Match,我想将原始ID与新ID进行匹配,新ID只是原始ID的一部分,并返回所有原始ID。例如,对于data.framedat,OrigID是一个列名。ID值为XXX\u X\u XXX,新ID仅为下划线符号\ux后的最后一部分,即XXX。我怎样才能配得上这个 我不知道如何只返回片段。我认为这会返回所有点击,而不仅仅是“\u1”后面的部分,给了我太多的值。我还想在ID不匹配的地方将NA值放在向量中 前 IDdat我们可以使用grep grep(new_ID, colnames(dat)) 这一点我还不清
dat
,OrigID
是一个列名。ID值为XXX\u X\u XXX
,新ID仅为下划线符号\ux
后的最后一部分,即XXX
。我怎样才能配得上这个
我不知道如何只返回片段。我认为这会返回所有点击,而不仅仅是“\u1”后面的部分,给了我太多的值。我还想在ID不匹配的地方将NA值放在向量中
前
IDdat我们可以使用grep
grep(new_ID, colnames(dat))
这一点我还不清楚。你能给出一个实际的例子和预期的输出吗?据我从你的问题中了解,new\u ID是OrigID在最后一个\u
之后的子字符串。我不确定它们如何匹配或是相同的。match(substr(OrigID,7,9),new\u ID)
或类似的东西,我想,但我们都在猜测,没有合适的示例数据。示例是:OrigID=123\u X\u 333,我想匹配新ID,它只会是333。我想将所有origid返回到一个向量中。当我使用grep时,它告诉我参数模式的长度>1,并且只有第一个元素是used@user6210879请用一个可复制的例子更新你的帖子
grep(new_ID, colnames(dat))