Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.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_Cumulative Sum - Fatal编程技术网

R 求累积和,然后存储在向量中

R 求累积和,然后存储在向量中,r,cumulative-sum,R,Cumulative Sum,我有一个向量test=c(2,4,6,8),我需要找到循环中k的1:4的累积和,然后找到上界和下界。代码如下: for(k in 1:4){ l[k] = (cumsum(test[1:k]) - 1.96)/k u[k] = (cumsum(test[1:k]) + 1.96)/k } max_l = max(l) max_u = max(u) 我得到一个警告 在l[k]中,您可以不使用循环来执行此操作。如果我正确理解了您的意思,您正在尝试: test = c(2,4,6,8) l

我有一个向量test=c(2,4,6,8),我需要找到循环中k的1:4的累积和,然后找到上界和下界。代码如下:

for(k in 1:4){
  l[k] = (cumsum(test[1:k]) - 1.96)/k
  u[k] = (cumsum(test[1:k]) + 1.96)/k
}

max_l = max(l)
max_u = max(u)
我得到一个警告


在l[k]中,您可以不使用循环来执行此操作。如果我正确理解了您的意思,您正在尝试:

test = c(2,4,6,8)
l <- (cumsum(test) - 1.96)/seq_along(test)
u <- (cumsum(test) + 1.96)/seq_along(test)

l
#[1] 0.04 2.02 3.35 4.51
u
#[1] 3.96 3.98 4.65 5.49

max_l = max(l)
max_u = max(u)

max_l
#[1] 4.51
max_u
#[1] 5.49
test=c(2,4,6,8)

l
l[k]
是一个单一值-
test[1:k]
k
值(1、2、3或4取决于循环的迭代次数)。你不能在一个值中存储>1个值,因此会出现警告。我如何为l[k]获取一个值?我想你可能只想在函数中使用
sum
而不是
cumsum
。是的,我尝试过,但在我尝试进行1000次模拟时,它只打印最后一个值。你检查了我下面的答案吗?对你有用吗?如果确实可以,请单击左侧的复选标记。每个帖子只能接受一个答案。