我是编程和R的新手,想要计算以下总和
我使用pochMpfr
包中的Rmpfr
作为上升因子和for循环来计算总和。
B=rep(1,k+1)
for (i in 0:k) {
B[(i+1)]= (-1)^i *choose(k,i)*pochMpfr((-i)*sigma, n)
}
sum(B)
这样做,我将结果作为列表(包括始终:mpfr),因此无法计算总和。
是否有可能立即将结果作为矩阵或将列表转换为仅包含相关元素的向量?
解决方案可能很简单但我在浏览论坛时却找不到它。
答案 0 :(得分:2)
不需要使用for循环,这应该有效:
library(Rmpfr)
# You do not define these in your question,
# so I just take some arbitrary values
k <- 10
n <- 3
sigma <- 0.3
i <- 0:k
B <- (-1)^i *choose(k,i)*pochMpfr((-i)*sigma, n)
sum(B)
## 1 'mpfr' number of precision 159 bits
## [1] 6.2977401071861993597462780570563107354142915151e-14