我有一些我在不同步骤中计算过的值,我想迭代地对它们求和:
elasped_time1<-10
elasped_time2<-20
elasped_time3<-40
elasped_time4<-30
elasped_time5<-20
elasped_time6<-10
elasped_time7<-20
elasped_time8<-10
elasped_time9<-30
elasped_time10<-20
现在我想通过在elasped_time [i]中递增i来迭代求和它们......
我试过了:
n = 10
for(i in 1:n){
x[i]=elasped_time[i]
i=i+1
print(total_time<-sum(x))
}
cat("Total time taken to run the codes (seconds):",total_time)
但悲惨地失败了......需要帮助!
答案 0 :(得分:2)
迭代命名的变量非常糟糕 - 它们会导致人们使用eval(parse(...))
来编写难以编写的代码并且更难以调试代码。
您似乎想要一个名为elapsed_time
的向量,其中包含一堆值:
elapsed_time = c(10, 20, 40, 30, 20, 10, 20, 10, 30, 20)
现在您可以使用elapsed_time[i]
访问第i个元素:
elapsed_time[2]
# [1] 20
累积金额也很容易:
cumsum(elapsed_time)
# [1] 10 30 70 100 120 130 150 160 190 210