r - 计算多个积分并绘制它们(使用 R)

标签 r integrate

我在计算和绘制多重积分时遇到问题。如果你能帮助我,那就太好了。

所以我有这个功能

> f = function(x, mu = 30, s = 12){dnorm(x, mu, s)}

我想在 z(1:100) 到 +Inf 之间整合多个时间,用 x=z 和 y = auc 绘制它:

> auc = Integrate(f, z, Inf)

R 返回:

Warning message:
In if (is.finite(lower)) { :
  the condition has length > 1 and only the first element will be used

我已经测试过做一个循环:

while(z < 100){
z = 1
auc = integrate(f,z,Inf)
z = z+1}

也没有用...不知道该怎么办

(我是 R 的新手,所以如果它真的很简单我已经很抱歉了..)

感谢您的帮助:)!

最佳答案

无需手动进行整合。 pnorm 给出从负无穷大到法线密度输入的积分。您可以通过修改 lower.tail 参数来获取上尾部

z <- 1:100
y <- pnorm(z, mean = 30, sd = 12, lower.tail = FALSE)
plot(z, y)

如果您希望集成更复杂的函数,则需要使用 integrate - 但如果您只是希望找到分布的概率,那么很可能会内置一个函数直接为您进行集成。

关于r - 计算多个积分并绘制它们(使用 R),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22274275/

相关文章:

java - 是否有集成 Java 和 C++ 的工具?

matlab - 定积分Matlab

Python:辛普森法则,曲线下正面积的否定答案?

r - R 中的特定排序

perforce - 在 Perforce 中合并/解析时如何集成每个更改列表?

python - Sympy integrate() 不会以常见分数的自然形式产生输出

python - 在 R6 的初始化中调用 R6 类的函数

r - 线条下方的3D填充

r - 错误消息

r - R 中 streamR 和 twitteR 包收到的推文差异