你如何在 R 中执行这样的求和?
sum_{i=1}^3 (x^2)
i=1 is lower bound
i=3 is upper bound
x^2 is the operation
所以我们会表演
1^2 + 2^2 + 3^2
使用标准循环:
tot <-0
for (x in 1:3) {
tot <- tot + x^2
}
你如何在 R 中执行这样的求和?
sum_{i=1}^3 (x^2)
i=1 is lower bound
i=3 is upper bound
x^2 is the operation
所以我们会表演
1^2 + 2^2 + 3^2
使用标准循环:
tot <-0
for (x in 1:3) {
tot <- tot + x^2
}
首先,我将指出要生成一个包含1,2,3
您可以执行的元素的向量:
x <- 1:3
其次,R 是一种矢量化语言 - 意思是 ifx
是一个矢量,我这样做x + 5
会为我的每个元素添加 5,而不需要x
for 循环。
# Recalling that "x <- x + 5" is the same as
for ( i in 1:length(x) ) {
x[i] <- x[i] + 5
}
# try to do something that makes x squared, i.e. x == c(1,4,9).
第三,看?sum
,从而sum(x)
将 中的所有元素相加x
。
the_answer <- sum( (1:3)^2 )
For 循环在上个世纪是如此。