【问题标题】:What does term in function mean?函数中的术语是什么意思?
【发布时间】:2012-06-19 19:55:42
【问题描述】:

您好,很抱歉仍在此处学习,学习代码参数的速度很慢。

只是想知道有人能解释一下函数的某个部分是什么意思吗:

x = sum(abs(apply(embed(y, 4), 1, prod)))

它确实在纸上给出了以下内容:

#sum(y|{j}|*y|{j-1}|*y|{j-2}|*|y{j-3}|)

我想知道1 是做什么的?因为我认为 (y, 4) 意味着 y 加上 3 滞后和 prod 我知道是产品

这个特定的函数是由我写的,我试图将它修改为等于:

#sum((|y{j}|^3/2)*(|y{j-1}|^3/2)*(|y{j-2}|^3/2)*(|y{j-3}|^3/2))

所以基本上我想知道我是否应该计算修改后的函数来将 y 提高到 ^3/2:

x = sum(abs(apply(embed((y^3/2), 4), 1, prod)))

或到:

x = sum(abs(apply(embed(y, 4), 3/2, prod)))

还是其他?

有什么帮助吗?

提前感谢您的意见

【问题讨论】:

    标签: r function arguments


    【解决方案1】:

    1 是称为MARGIN 的参数apply 函数的一部分。这就是为什么我提倡指定参数名称的原因。无论如何,apply 函数将“循环”通过数据帧、数组、矩阵的行 (1) 或列 (2)... 表达式或评估对象应作为 X 传递,或者如果您更喜欢裸函数,第一个论点。如果你想提高y 一定数量,你必须像你在其中一行中展示的那样做:y^(3/2)

    换句话说,此命令将对行中的所有元素求和:

    apply(X = my.object, MARGIN = 1, FUN = sum)
    

    或跨列:

    apply(X = my.object, MARGIN = 2, FUN = sum)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-26
      • 2010-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多