Как передать список аргументов методу в R? - PullRequest
0 голосов
/ 14 мая 2018

Я пытаюсь передать аргументы в виде списка в метод.Я создаю методы вещи для передачи на data.frame.Пример:

dfApply <- function(df, ...) {
  UseMethod("dfApply", df)
}

dfApply.sample <- function(df, size, ...) {
  # Stuff
  df <- sample_frac(df, size = size)
  return(df)
}

Теперь, если я вызову функцию:

args <- list(size = 0.5)
class(df) <- c("sample", class(df))
df <- dfApply(df, args)

Метод все еще получает его в виде списка ().

Есть ли способпередать аргументы как это?

РЕДАКТИРОВАТЬ: Как уже упоминалось в комментариях, do.call() решает проблему (на данный момент), но я должен определить каждый аргумент в args:

args <- list(df = df, size = 0.5)
class(df) <- c("sample", class(df))
df <- do.call(dfApply, args)

Это мудрый способ реализации методов?Не кажется правильным.

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