R:具有多个参数的integrate()函数

irr*_*rom 3 r

我有一个函数,目前它是高斯函数:

G<-function(x, mu, s) 1/(2*s**2*pi)**0.5 * exp(-(x-mu)**2/(2*s**2))
Run Code Online (Sandbox Code Playgroud)

我想使用将其与mu=50, s=10集成integrate()。例如

integrate(G(s=10,mu=50), 0, 10) 
Error in G(s = 10, mu = 50) : argument "x" is missing, with no default
Run Code Online (Sandbox Code Playgroud)

问题源于这样一个事实:integrate()需要一个只有一个参数的函数,而我给它一个需要 3 个参数的函数。我可以通过给出mus默认值来“解决”问题,但这样我就失去了一般性。处理这个问题的最佳方法是什么?

编辑:这被标记为重复。这个问题没有公认的答案,我也不清楚那里到底在问什么。该问题的错误消息与我的不同。

irr*_*rom 6

跟进罗兰的评论。正确的做法是:

 integrate(G, 0, 10, s=10, mu=50)
Run Code Online (Sandbox Code Playgroud)