[R] How to see how a function is written
Gavin Simpson
gavin.simpson at ucl.ac.uk
Tue Jun 15 14:40:22 CEST 2010
On Tue, 2010-06-15 at 14:20 +0200, Sergey Goriatchev wrote:
> Hello,
>
> If I want to see how, say, apply function is written, how would I be
> able to do that?
> Just typing "apply" at the prompt does not work.
In what sense does it not work? If I do this, I get:
> apply
function (X, MARGIN, FUN, ...)
{
FUN <- match.fun(FUN)
d <- dim(X)
dl <- length(d)
if (dl == 0L)
stop("dim(X) must have a positive length")
ds <- 1L:dl
if (length(oldClass(X)))
X <- if (dl == 2)
....
Perhaps you a referring to S3 methods (and just used apply as an easy
example)? In which case you could try:
> fitted
function (object, ...)
UseMethod("fitted")
<environment: namespace:stats>
> methods(fitted)
[1] fitted.default* fitted.isoreg* fitted.nls*
[4] fitted.smooth.spline*
Non-visible functions are asterisked
> fitted.isoreg
Error: object 'fitted.isoreg' not found
## hmm, not found, use getAnywhere instead
> getAnywhere(fitted.isoreg)
A single object matching ‘fitted.isoreg’ was found
It was found in the following places
registered S3 method for fitted from namespace stats
namespace:stats
with value
function (object, ...)
{
if (object$isOrd)
object$yf
else object$yf[order(object$ord)]
}
<environment: namespace:stats>
Alternatively, use:
getS3method("fitted", "isoreg")
You might also consult Uwe Ligges 2006 article in R-News (now The R
Journal):
Uwe Ligges. R Help Desk: Accessing the sources. R News, 6(4):43-45,
October 2006.
http://cran.r-project.org/doc/Rnews/Rnews_2006-4.pdf
If that doesn't help, can you show exactly what you types, what the
error was and what you were looking for, along with your R version etc.
My system/R version info (used for the above) is:
> sessionInfo()
R version 2.11.1 Patched (2010-06-14 r52272)
x86_64-unknown-linux-gnu
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=C LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods
base
loaded via a namespace (and not attached):
[1] tools_2.11.1
HTH
G
>
> Thank you for help!
>
> Sergey
>
> ______________________________________________
> R-help at r-project.org mailing list
> 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.
--
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
Dr. Gavin Simpson [t] +44 (0)20 7679 0522
ECRC, UCL Geography, [f] +44 (0)20 7679 0565
Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk
Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/
UK. WC1E 6BT. [w] http://www.freshwaters.org.uk
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
More information about the R-help
mailing list