В R, я хочу, чтобы мой цикл while продолжался до тех пор, пока каждый элемент в определенном векторе «theta_diff» (который обновляется в цикле while на каждой итерации) уменьшается ниже определенного порога «эпсилон». В настоящее время я могу добиться этого, используя условие OR в то время как тест цикла условие (theta_diff представляет собой 2-элементный вектор):R: Запустите цикл while, пока все элементы вектора не будут меньше порогового значения
while((theta_diff[1]>epsilon)|(theta_diff[2]>epsilon))
{
}
Я интересно, если есть более разумный способ сделать это? Я попробовал all(), но он реализует логику AND вместо логики OR, поэтому, даже если один из элементов theta_diff соответствует критериям, цикл while останавливается.
while(all(theta_diff>epsilon))
{
}
Основное вдохновение для поиска умнее вариант заключается в следующем: в зависимости от программы, размерность вектора theta_diff может измениться, и я хочу сделать то время как условие цикла не зависит от длины вектора theta_diff.