为通常返回矩阵但可能使条件失败的函数设置返回值的内容

时间:2015-12-21 17:12:30

标签: r function

我有一个函数应该返回一个矩阵以供进一步使用的函数。我在文件中读取并进行计算,但是如果当前文件不符合正确的格式,我需要主函数跳到下一个文件。这就是我现在如何拥有它的方式:

for (file in list.files(directory)) {
    for (i in 1:length(var)) { 
        matrix <- foo('someFile.txt',var[i])     # returns matrix under normal conditions
        if (typeof(matrix)) == "logical") {      # check if foo returns FALSE
            warning(paste0('File ',file, ' is not formatted correctly'))
            break                                # skip to next file if so
        }
        ...
    }
}

foo <- function(input,seq)
    data <- readLines(input)
    if (!data[1] %in% c("first","line","values")) {
        return(FALSE)
    }
    ...
    return(data)
}

但是测试类matrix返回看起来很笨拙且技术很差。对不起,我不知道如何更好地表达这个问题。

0 个答案:

没有答案