1
当我一行一行地运行这个代码它的作品,但如果我运行整个代码块它给我一个错误。 什么,我想在这里做的是
ifelse(< COND>,{是的,ifelse(< COND>,{是,否})},否)R调试嵌套的ifelse()语句
ifelse(myfunct(R) >= myfunct(worst_point),
{IC <- C - 0.5 * (R - C); ifelse(myfunct(IC) < myfunct(worst_point), {points[[which.max(result)]] <- IC},
for (i in 2:(n+1)) {points[[i]] <- best_point + 0.5 * (points[[i]] - best_point)})},
for (i in 2:(n+1)) {points[[i]] <- best_point + 0.5 * (points[[i]] - best_point)})
但它给我一个错误:
Error in ans[!test & ok] <- rep(no, length.out = length(ans))[!test & :
replacement has length zero
In addition: Warning message:
In rep(no, length.out = length(ans)) :
'x' is NULL so the result will be NULL
部分,其中其给我的错误是for循环内ifelse()语句,我不知道为什么,可能有人帮助我理解这个问题?
它看起来像你想要使用一个真正的'如果'''else'块。看到这个页面看起来像一个合理的概念介绍:https://www.programiz.com/r-programming/if-else-statement –
@NickNimchuk嘿一些如何使用真正的if-else块工作,..我使用ifelse(),因为以前真正的if-else块没有通过多个嵌套的if语句链接,但也许我犯了一个错误..谢谢。 – kys92