检查列表元素是否存在于R列表中

时间:2013-10-20 13:31:42

标签: r

我有一个列表“ans”这里有几个条目

[[93]]
[1] "<dd>male, 31 years old</dd>" "black male"                       
[3] "31"                               

[[94]]
character(0)

[[95]]
[1] "<dd>female, 23 years old</dd>" "female"                       
[3] "23"                               

[[96]]
[1] "<dd>male, 23 years old</dd>" "male"                       
[3] "23"  

我必须找出每个条目是否与某个年龄匹配

所以我有一个像这样的循环

for(item in ans){
    if(item[3] && item[3]==age){
         count = count + 1
    }
}

但他们是一些像

这样的条目
[[94]]
    character(0)

因此我收到错误: missing value where TRUE/FALSE needed

如何摆脱这个问题

1 个答案:

答案 0 :(得分:3)

它对我有用:

ans <- list(c("<dd>male, 31 years old</dd>", "black male", "31"  ), character(0))
count <- 0
age <- "31"
for(item in ans){
  if (isTRUE(item[3] == age)) {
    count <- count + 1
  }
}
count

这是你想要的吗?