功能上的术语是什么意思?

时间:2012-06-19 19:55:42

标签: r function arguments

对不起,我仍然在这里学习,并且学习代码参数的速度很慢。

只是想知道任何人都可以解释某个功能的某个部分意味着什么:

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加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)))

或其他?

有任何帮助吗?

提前感谢您的输入

1 个答案:

答案 0 :(得分:2)

1是名为apply的{​​{1}}函数的一部分。这就是我提倡指定参数名称的原因。无论如何,MARGIN函数将“循环”数据框,数组,矩阵的行(1)或列(2)......表达式或计算对象应该作为apply传递或者如果你更喜欢你的功能裸,第一个参数。如果您希望将X提高一些,则必须按照以下其中一行显示:y

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

y^(3/2)

或跨列:

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