我在R中使用以下代码时遇到问题。我希望myfun()
函数将一些数据写入my.res
矩阵。我可以轻松打印语句my.vec[i]/my.vec[i-j]
。
my.vec <-c(1:10)
my.res <-matrix( ,10,2)
myfun <-function(j=2){
for(i in (j+1):10){
my.res[i,1] <-my.vec[i]/my.vec[i-j]
print(my.vec[i]/my.vec[i-j])
}
}
答案 0 :(得分:0)
您的打印位置错误,也将输入j=2
更改为可以分配的j
。如上所述 - 您不需要循环来执行此操作 - 但您似乎只是想学习如何使用循环?
myfun <- function(j){
for(i in (j + 1):10){
my.res[i,1] <- my.vec[i]/my.vec[i-j]
}
print(my.res)
}
myfun(2)