2016-05-28 13 views
0

Betrachten Sie eine Funktion, die eine beliebige Anzahl von Argumenten akzeptiert:Klasse jedes Eingabeargument in R-Funktion

FUN <- function(...) { 
    #/some code/ 
    } 

Wie die Klassen von Eingabeargumente, um zu bestimmen dieser Funktion FUN?

library(ggplot2) 

g <- qplot(mpg, wt, data = mtcars) 
char <- "lalala" 
DF <- data.frame(ch) 
f <- function(x) x*x 

FUN(g, char, DF, "DF", list(), f, `%in%`, NULL, TRUE, "TRUE") 

Antwort

2

Möglicherweise dies:

FUN <- function(...) { 
    elipsis <- list(...) 
    print(sapply(elipsis, class)) 
    ##/some code/ 
    } 

Allerdings müssen Sie sicherstellen, dass Sie in Vernünftigste sind vorbei. Zum Beispiel:

FUN("lalala", trees, "DF", list(), function(x) x * x, `%in%`, NULL, TRUE, "TRUE") 
# [1] "character" "data.frame" "character" "list"  "function" 
# [6] "function" "NULL"  "logical" "character" 
Verwandte Themen