如何将 R 中的积分结果分配给数值变量? [英] How to assign result of integrate in R to a numeric variable?

查看:28
本文介绍了如何将 R 中的积分结果分配给数值变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

R 示例:

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

integrate 的输出是字符串:

The output of integrate is the string:

120 with absolute error < 7.3e-05

我想将字符串中的第一个值(120,整数)赋给一个变量.如何做到这一点?

I want to assign the first value in the string (120, the integral) to a variable. How to do that?

推荐答案

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"

您可以按名称访问元素:

You can access elements by name:

> temp$value
[1] 120

... 或按索引:

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

这篇关于如何将 R 中的积分结果分配给数值变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆