В R можно настроить функции с необязательными аргументами, указав значение по умолчанию для аргумента. Например, если мои аргументы x и y = 0, то функция требует ввода для x. Он будет использовать вход для y, если он задан, но установит y = 0, если значение для y не задано.
Иногда мне нужен хотя бы один из двух параметров, но получение обоих может быть опасным, если ввод неправильный.
В качестве примера того, о чем я думаю, рассмотрим, что в наборе данных могут быть столбцы для «сдвига» (AM, PM, Night - фактор) и времени суток. Если у меня есть время суток, я могу рассчитать смещение, и получить значение для этого параметра не нужно. Если я получаю сдвиг в качестве входа, то мне не нужно время суток. Я хочу приблизительно узнать, в какое время дня произошло событие, поэтому мне нужна та или иная информация. К сожалению, когда я получаю оба входа, возможно, что есть несоответствие - время ввода может быть 8 утра, а сдвиг входа может быть сдвиг PM. Это проблема.
Есть ли способ настроить это требование (получить сдвиг или получить время, но не получить оба) в параметрах функции (в определении функции), или мне нужно указать оба параметра как необязательные и сделать проверка внутри функции (т. е. хотя бы одно или другое, но не несоответствие)?