Czasami jest funkcja, która ma dowolną liczbę argumentów. Na przykład funkcja bootstrapPage
pakietu jest błyszcząca. Jeśli mam data.frame i chcę utworzyć jeden widget dla jednego wiersza, to nie znalazłem sposobu na przekazanie liczby argumentów zgodnie z numerem wiersza data.frame. Do tej pory generuję skrypt i używam podstępu, aby struktura argumentów przekazanych do funkcji R (klucz i wartość) była podobna do list
, więc zastanawiam się, czy istnieje sposób przekazać argument w postaci listy w R.Zamień argument na listę w R
Dokładniej, jeśli mam funkcji f
oraz listę argv
, czy istnieje sposób, aby przejść do obiektów w argv
f
według dopasowania nazwy argv
a nazwa argumentów f
, a pozycja w argv
i pozycja w argumentach f
?
Na przykład, powiedzmy
f <- function(a, b) a + b
argv <- list(a=1, b=2)
Jak należy przekazać do f
argv
co jest równoważne f(a=argv$a, b=argv$b)
?
Albo jeśli mamy:
f <- function(a, b, ...) { # some codes }
argv <- list(a = 1, b = 2, 3, 4, 5)
Jak należy przekazać do f
argv
co jest równoważne f(a=argv$a, b=argv$b, argv[[3]], argv[[4]], argv[[5]])
?
Dzięki!
Nicea zbiór przykładów. Jest to cecha języka, który naprawdę zasługuje na lepsze traktowanie w "wprowadzeniu do R". –
+1 za świetne przykłady –