1
私はループを実行したい2つの行列を持っています。私の問題は、私は1つのcolomnのためにループしているので、他の列、したがって私の間違った結果を含める方法を知らないです。私のコードは以下の通りです:R:行列loop_help私の行列のすべての行をループします。現在、私のコードは一つの行列をループしています
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
ターン出力は、第1列の正しい結果を与えたが、第二のカラムの期待、誤った結果としています。ループ機能を調整するにはどうすればよいですか?前もって感謝します。ラインで
ありがとうございました。 – rder
@rderこの回答があなたの問題を解決した場合は、スコアカウントの下にあるティックマーク(緑に変わるはずです)をクリックして「回答」をマークすることを検討してください。 –