如何将R中的积分结果分配给数字变量?

时间:2015-11-18 18:57:02

标签: r variable-assignment

R示例:

k=6
f<-function(s){s^(k-1)*exp(-s)}
integrate(f,0,Inf)

integration的输出是字符串:

120 with absolute error < 7.3e-05

我想将字符串中的第一个值(120,积分)赋给变量。 怎么做?

1 个答案:

答案 0 :(得分:8)

integrate的结果是list

> temp <- integrate(f,0,Inf)
> temp
120 with absolute error < 7.3e-05
> str(temp)
List of 5
 $ value       : num 120
 $ abs.error   : num 7.34e-05
 $ subdivisions: int 5
 $ message     : chr "OK"
 $ call        : language integrate(f = f, lower = 0, upper = Inf)
 - attr(*, "class")= chr "integrate"

您可以按名称访问元素:

> temp$value
[1] 120

...或索引:

> temp[[2]]
[1] 7.335833e-05