使用for循环的计算
我试图计算R中带有“for”的循环,但我发现到处都是相同的值,我不知道我错在哪里使用for循环的计算,r,for-loop,matrix,R,For Loop,Matrix,我试图计算R中带有“for”的循环,但我发现到处都是相同的值,我不知道我错在哪里 s= exp(3.9847926338) g= exp(0.0008496878/log(3.8867428919)) SQlisse2012=sum(Qlisse2012) output <-matrix(unlist(Qlisse2012), nrow = 111, byrow = TRUE) for(i in 1:111) { mak_x[i,1] <-1-s*g^((output[
s= exp(3.9847926338)
g= exp(0.0008496878/log(3.8867428919))
SQlisse2012=sum(Qlisse2012)
output <-matrix(unlist(Qlisse2012), nrow = 111, byrow = TRUE)
for(i in 1:111) {
mak_x[i,1] <-1-s*g^((output[i,1]^i)*(SQlisse2012-1))
}
mak_x
这里不需要循环。R是矢量化的,因此你可以运行
mak_x[,1]@Jimbou很好的答案我删除了我的答案,这是相同的值是多少?您是否检查了1-s*g^((输出[i,1]^i)*(SQlisse2012-1))的值?Qlisse2012是我在矩阵中转换的数字列表。现在R告诉我matrixOK上的下标数不正确,是不是你的代码必须是这样的<代码>1-s*g^((输出[,1]^c(1:111)*(SQlisse2012[1:100]-1))
> dput(head(unlist(Qlisse2012)))
c(0.00196369415769458, 0.000607220407674348, 8.90217045411847e-05,
1.06625941681469e-05, 2.63131336125785e-05, 3.61959487783429e-05)