У меня есть две матрицы, на которых я хочу выполнить цикл.Моя проблема в том, что я зацикливаюсь на одном столбце и не знаю, как включить другой столбец, поэтому мои неверные результаты.Мои коды следующие:
t=as.matrix(b)
y=as.matrix(a)
t
a b
[1,] 1 10
[2,] NA 9
[3,] 3 NA
[4,] 4 7
[5,] 5 6
[6,] 3 4
y
c d
[1,] 3 12
[2,] NA 11
[3,] 5 NA
[4,] 6 9
[5,] 7 8
[6,] 3 12
turn
[,1] [,2]
[1,] 0 0
[2,] 0 0
Код:
n=3 #number to consider at a time
runs=2 #total data points divided by 60 to the nearest whole number
turn=matrix(0, nrow=runs,2)
TR = y/t
for (i in 1: runs){
index_start=3*(i-1)+1
index_end= 3*i
turn[i]=mean( TR[index_start:index_end],na.rm=TRUE)
}
turn
[,1] [,2]
[1,] 2.333333 0
[2,] 1.300000 0
Выход поворота дал правильные результаты для первого столбца, но, как и ожидалось, неверные результаты для второго столбца.Как мне настроить функцию петли?Заранее спасибо.