gpt4 book ai didi

r - R中不同类型的函数之间的差异

转载 作者:行者123 更新时间:2023-12-04 04:35:38 25 4
gpt4 key购买 nike

希望能帮助您理解R中几种类型的函数之间的主要区别。

在不同类型的函数的定义中,我有些不知所措,要理解不同类型的函数之间的关系变得有些困难。

具体来说,我对以下类型的函数之间的关系和区别感到困惑:

  • 泛型或方法:基于输入自变量的类,泛型函数通过使用Method Dispatch调用适当的方法函数。
  • 不可见与可见
  • 基本与内部

  • 我对这些不同类型的函数之间如何相互关联(如果有的话)以及它们之间的各种区别和重叠感到困惑。

    最佳答案

    以下是有关原始和内部的一些文档:http://www.biosino.org/R/R-doc/R-ints/_002eInternal-vs-_002ePrimitive.html

    泛型是可以应用于类对象的泛型函数。每个类都使用特定的方法编写,然后将其设置为通用方法。因此,您可以使用“方法”功能查看与通用调用关联的特定方法:

    methods(print)

    这将列出与通用“打印”相关的所有方法。
    另外,您可以通过此调用查看给定类具有的所有泛型
    methods(,"lm")

    其中lm是一类线性模型。
    这是一个例子:
    x <- rnorm(100)
    y <- 1 + .4*x + rnorm(100,0,.1)
    mod1 <- lm(y~x)
    print(mod1)
    Call:
    lm(formula = y ~ x)

    Coefficients:
    (Intercept) x
    1.002 0.378

    print.lm(mod1)
    Call:
    lm(formula = y ~ x)

    Coefficients:
    (Intercept) x
    1.002 0.378

    print(mod1)(泛型调用)和print.lm(mod1)(对类的方法调用)都做相同的事情。 R为什么要这样做?我真的不知道,但是据我所知,这就是方法和泛型之间的区别。

    关于r - R中不同类型的函数之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11732336/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com