On 16/11/2017 4:53 PM, Boris Steipe wrote:
Large packages sometimes mask each other's functions and that creates a
headache, especially for teaching code, since function signatures may depend on
which order packages were loaded in. One of my students proposed using the idiom
<function> <- <package>::<function>
... in a preamble, when we use just a small subset of functions from a larger
package. I like that idea and can't see obvious disadvantages(1).
Are there subtle risks to that approach?
You might do it twice. R isn't going to complain if you have
filter <- stats::filter
# some other code here...
filter <- dplyr::filter
in your code, but the second one will overwrite the first one.
The normal way to handle this is in the NAMESPACE file, where you should
have
importFrom(stats, filter)
If you then have
importFrom(dplyr, filter)
you should get an warning:
Warning: replacing previous import ‘stats::filter’ by ‘dplyr::filter’
when loading ‘testpkg’.
Duncan Murdoch
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.