Jak zaimportować tylko jedną funkcję z innego pakietu, bez ładowania całej przestrzeni nazw

Załóżmy, że tworzę pakiet o nazwiefoo, który chciałby użyćdescription funkcja zmemisc pakiet. Nie chcę importować całościmemisc przestrzeń nazw, ponieważ:

To jest złememisc zastępuje bazęaggregate.formula funkcja, która łamie kilka rzeczy. Na przykład,example(aggregate)zawiodłoby żałośnie.

Pakiet zawiera następujące pliki:

OPIS

Package: foo
Version: 0.0
Title: Foo
Imports:
    memisc
Collate:
    'foo.R'

NAMESPACE

export(bar)
importFrom(memisc,description)

R / foo.R

##' bar function
##'
##' @param x something
##' @return nothing
##' @importFrom memisc description
##' @export

`bar` <- function(x) {
    description(x)
}

Myślę, że to skorzystamimportFromnie ładowałby całegomemisc przestrzeń nazw, ale tylkonamespace::description, ale tak nie jest. Począwszy od wanilii R:

R> getS3method("aggregate","formula")
## ... function code ...
## <environment: namespace:stats>
R> library(foo)
R> getS3method("aggregate","formula")
## ... function code ...
## <environment: namespace:memisc>
R> example(aggregate)
## Fails

Czy wiesz, jak mogę importowaćdescription funkcja zmemisc bez dostaniaaggregate.formula w moim środowisku?

questionAnswers(2)

yourAnswerToTheQuestion