【问题标题】:How to find indices of element in one vector in other vector R [duplicate]如何在另一个向量R中找到一个向量中元素的索引[重复]
【发布时间】:2020-03-05 16:11:12
【问题描述】:

假设我有两个向量

a <-  c('Q1', 'Q2', 'Q3')

b <- c('Q10', 'Q13', 'Q1', 'Q1', 'Q40', 'Q2', 'Q2', 'Q2')

现在我想在b 中找到a 中元素的索引。所以结果应该是[3, 4, 6, 7, 8]。我尝试使用match(a, b) 来处理它,但这只会导致ab 中第一次出现[3, 6]

有人知道如何在 R 中做到这一点吗?

【问题讨论】:

  • 能否请您以有效的 R 语法发布您的样本向量?例如,a = c("Q1", "Q2", "Q3")
  • 另见thisthis

标签: r


【解决方案1】:
a <-  c('Q1', 'Q2', 'Q3')
b <- c('Q10', 'Q13', 'Q1', 'Q1', 'Q40', 'Q2', 'Q2', 'Q2')

which(b %in% a)

[1] 3 4 6 7 8

【讨论】:

  • 只是为了增加您对 OP 的回答。 match() 不起作用,因为 match() 返回其第一个参数在第二个参数中的(第一个)匹配位置的向量,如 R 文档中所述。
猜你喜欢
  • 1970-01-01
  • 2021-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-21
  • 2020-03-15
相关资源
最近更新 更多