R中的for循环是否在生成comaprison之前取消列出temp变量?

R中的for循环是否在生成comaprison之前取消列出temp变量?,r,R,我的列表日志是具有以下结构的列表列表 $ :List of 3 ..$ success : logical TRUE ..$ details :List of 1 .. ..$ message: chr "check" ..$ timestamp: POSIXct[1:1], format: "2015-09-14 23:01:07" 现在,当我在列表上循环查找success==FALSE的情况,然后将其附加到“Failure”列表中 我这样做的方式是 failures &

我的列表日志是具有以下结构的列表列表

$ :List of 3
  ..$ success  : logical TRUE
  ..$ details  :List of 1
  .. ..$ message: chr "check"
  ..$ timestamp: POSIXct[1:1], format: "2015-09-14 23:01:07"
现在,当我在列表上循环查找success==FALSE的情况,然后将其附加到“Failure”列表中

我这样做的方式是

failures <- list()
for (log in logs) {
  if (log$success==FALSE) {

    failures <- c(failures, log)
  }
}

failuresfailures=Filter(否定(is.null),lappy(日志,函数(x){if(!x$success)return(x)})

尝试
logs[!vapply(日志,函数(x)x$success,TRUE)]
。请将
dput(日志)
的结果放入您的问题中!
 failures <- list()
for (log in logs) {
  if (log$success==FALSE) {

    failures <- c(failures, list(log))
  }
}