我想在R中子集一个tis对象列表,但每当我试图用一个包含所有假条目的逻辑向量子集时,就会遇到错误。
  
  
   例如,给定tis对象myTis:
  
  library(tis)
myTis <- list(cbind(tis(1:10,    start = c(2000, 1), freq = 12), 
                    tis(101:110, start = c(2000, 1), freq = 12)),
              cbind(tis(7:12,    start = c(2000, 1), freq = 12), 
                    tis(107:112, start = c(2000, 1), freq = 12)))
  
   如果我想找到myTis中所有元素的所有行,其中第一列大于11,这很容易做到:
  
  myTis %>% lapply(function(x) x[x[,1] < 11,])
  
   但是,当我尝试将其子集为排除其中一个tis对象的所有元素的某个值时,我得到以下错误:
   
    if(!maybe)return(FALSE)中出错:缺少需要TRUE/FALSE的值
   
   . 例如,运行此行会导致该错误:
  
  myTis %>% lapply(function(x) x[x[,1] < 7,])
  
   值得注意的是,当我尝试对单个tis对象执行类似操作时,我没有发现错误:
  
  myTis[myTis[[1]][,1] > 10]
  
   我也愿意用完全不同的方法来处理tis对象。