保存为R中For循环的矢量

时间:2016-03-09 17:46:04

标签: r loops vector

我这里有一个非常简单的问题。我一直试图将循环中的结果保存为矢量。以下是我可重现的代码: -

a = matrix( c(0.7, 0.3, 0.2, 0.8),nrow=2, ncol=2, byrow = TRUE)
b = matrix( c(0.02, 0.45, 0.15, 0.30),nrow=2, ncol=2, byrow = TRUE)

d = 0
myvector <- c()

for (i in 1:2) {
    d = d + (a[, i] * b[, i]) 
    myvector[i] <- d
}

myvector
[1] 0.014 0.149

为什么它没有给我整个载体?它只给我第一行的答案。我们如何将循环结果存储为向量?

1 个答案:

答案 0 :(得分:1)

试试这个:

a  = matrix( c(0.7, 0.3, 0.2, 0.8),nrow=2, ncol=2, byrow = TRUE)
b   = matrix( c(0.02, 0.45, 0.15, 0.30),nrow=2, ncol=2, byrow = TRUE)
d = 0
myvector <- vector()
for (i in 1:2){
 d = d + (a[,i] * b[,i]) 
myvector <- c(myvector, d)
}