Remington, Richard wrote:
# Why does expressing one function

require(ctest)
t.test

# return only

function (x, ...)
UseMethod("t.test")
<environment: namespace:ctest>

# but expressing another function

shapiro.test

# returns more complete code?

function (x)
{
    DNAME <- deparse(substitute(x))
    x <- sort(x[complete.cases(x)])
    n <- length(x)
    if (n < 3 || n > 5000)
        stop("sample size must be between 3 and 5000")
...

Short answer: Unless you're programming your own functions, you don't need to worry about that.

Long answer: Because the first is generic - it looks at what kind of data you're testing (two vectors, a formula, whatever, ...) and calls the appropriate sub-function. shapiro.test does not; it just takes one data format, and stops in its tracks if that's not what you've provided.

The ideas behind this are documented in "Writing R Extensions" (R-exts.pdf) which is supplied with binary R distributions, and is available from CRAN. See chapter 6, "Generic functions and methods", in the version that accompanies R-1.8.1.

Cheers

Jason
--
Indigo Industrial Controls Ltd.
http://www.indigoindustrial.co.nz
64-21-343-545
[EMAIL PROTECTED]

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help

Reply via email to