Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
函数中R的求和_R - Fatal编程技术网

函数中R的求和

函数中R的求和,r,R,这是函数的公式。数据集包含变量k(行号)、t(0-120)和C。 我想用N=121求和 我目前编写的代码如下:xR中的大多数计算函数都是矢量化的,这意味着不必编写循环。如果向量C包含时间t_1,…,t_N的测量值,且向量t包含时间,则您可以简单地计算公式: sum((tail(C,-1) + head(C,-1)) * diff(t)) / 2 tail(x,-1)删除向量的第一个元素x和head(x,-1)删除向量的最后一个元素x。函数diff计算差异。有关更多信息,您可以在R控制台?tai

这是函数的公式。数据集包含变量k(行号)、t(0-120)和C。 我想用N=121求和


我目前编写的代码如下:
xR中的大多数计算函数都是矢量化的,这意味着不必编写循环。如果向量
C
包含时间
t_1,…,t_N
的测量值,且向量
t
包含时间,则您可以简单地计算公式:

sum((tail(C,-1) + head(C,-1)) * diff(t)) / 2
tail(x,-1)
删除向量的第一个元素
x
head(x,-1)
删除向量的最后一个元素
x
。函数
diff
计算差异。有关更多信息,您可以在R控制台
?tail
?head
?diff
中编写

计算总和的另一种方法是注意,您需要长度为2的向量
C
的滚动平均值。对于滚动计算,您可以使用package
zoo

sum(zoo::rollmean(C, 2) * diff(t))

您好,谢谢您的回复!是否有循环版本来计算此函数的和?