Извлечение результатов функции - PullRequest
0 голосов
/ 31 января 2019

Я посмотрел здесь, но не смог решить мою проблему: Извлечь результаты функции

Допустим, у нас есть эта фиктивная функция, которая возвращает то, что написал пользователь, как можетЯ извлекаю то, что находится внутри этой функции.Я черпаю вдохновение из таких функций, как, например, те, которые используются в алгоритмах машинного обучения.Например, функция такого типа:

z<-train(.........)#just an example

Из приведенного выше я могу извлечь несколько результатов, например, z$finalmodel #an example и так далее.Как это сделать?Вот мой пример функции:

dummy_fun<-function(x,y){
  y<-deparse(substitute(y))
  x<-deparse(substitute(x))
  z<-data.frame(X=x,Y=y)
  q<-print(paste0("You wrote ",x," and ", y))

}
res<-dummy_fun(Hi,There)

dummy_fun содержит объекты z и q, как я могу их извлечь?Большое спасибо!

1 Ответ

0 голосов
/ 31 января 2019

Функция может быть проще (без deparse(substitute()):

dummy_fun<-function(x,y){
  z<-data.frame(X=x,Y=y)
  q<-paste0("You wrote ",x," and ", y)
  return(list(z = z, q = q))
 }

, которая при вызове с аргументами:

> dummy_fun(x = 1, y = 2)
$z
  X Y
1 1 2

$q
[1] "You wrote 1 and 2"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...