以下代码行为不端。当我在RStudio内部运行它来测试它时,它很好。我得到了custom_vars的一个值,这是有意义的。当我尝试使用Knit运行此代码时,它每次都会返回错误。
我试过在custom_vars的范围内玩aorund,但也不起作用。
report_params <- "-summary-private-room-tenure-minmax-map-Analyse newVar group-Analyse oldVar group"
custom_vars <- tryCatch(
{
a <- report_params
a <- as.list(strsplit(a, "-")[[1]])
a <- str_subset(a, pattern = "Analyse.*.group")
if (length(a) > 0) {
a <- sapply(strsplit(a, split=' group' , fixed=TRUE), function(x) (x[1]))
a <- sapply(strsplit(a, split='Analyse ', fixed=TRUE), function(x) (x[2]))
custom_vars <- c(a) # no return in try code!
} else {
ret <- c("zero legth")
return( ret )
}
}, error=function(e) {
ret <- c("error")
return( ret )
}
)
如果我把试捕的东西剪掉,它又能正常工作。我想的都试过了。这毫无意义。
a <- params$report_params
a <- as.list(strsplit(a, "-")[[1]])
a <- stringr::str_subset(a, pattern = "Analyse.*.group")
if (length(a) > 0) {
a <- sapply(strsplit(a, split=' group' , fixed=TRUE), function(x) (x[1]))
a <- sapply(strsplit(a, split='Analyse ', fixed=TRUE), function(x) (x[2]))
custom_vars <- c(a) # no return in try code!
} else {
custom_vars <- c("zero legth")
# return( ret )
}