R match.call: как передать переменную в эту функцию? - PullRequest
0 голосов
/ 03 апреля 2020

Я использую пакет osqp, в котором есть функция osqpSettings, код которой можно найти там (вы можете просто запустить этот код без установки пакета, если хотите, результат тот же). Вызов:

osqpSettings(verbose = TRUE)

или:

osqpSettings(verbose = FALSE)

работает как положено.

Но вызов любого из них:

my_verbose = TRUE
osqpSettings(verbose=my_verbose)
osqpSettings(verbose=1>0)
osqpSettings(verbose=eval(1>0))
osqpSettings(verbose=eval(my_verbose))

не работает со следующей ошибкой:

Error in checkpar(inpars[[nm]], defaultOsqpSettings[[nm]]) : 
  l'objet 'pairlist' ne peut être converti automatiquement en un type 'logical'
Called from: checkpar(inpars[[nm]], defaultOsqpSettings[[nm]])

(французская часть, переведенная в 'объект, не может быть автоматически преобразована к типу "). Я подозреваю, что это метод match.call(), который использует эта функция, который не принимает код в своих параметрах. Как я могу передать переменную в качестве параметра (без вызова функции, если if(my_verbosity) ...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...