当我逐行运行此代码时,它可以工作,但如果我运行整个代码块,它会给我一个错误。 我在这里要做的是什么 ifelse(< cond>,{yes; ifelse(< cond>,{yes,no})},no)
image-1.jpg image-2.jpg image-3.jpg image-4.jpg image-5.jpg
但它给了我一个错误:
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)})
它给我一个错误的部分是ifelse()语句中的for循环,我不知道为什么,有人可以帮我理解这个错误信息吗?
答案 0 :(得分:1)
我认为问题是在yes
的{{1}}和no
参数中进行了分配。该函数用于返回与其ifelse()
参数相同形状的值。在这里,我尝试使用test
和if()
语句重写它,并根据您的评论,您已经成功完成了。
else