【问题标题】:R integrate\sapply three variables functionR集成\应用三变量函数
【发布时间】:2017-07-01 17:17:10
【问题描述】:

我有以下问题: 我考虑一个两个条目函数(fvec),我想将它与一个变量(即 x)集成。所以我愿意;

fvec = function(x, y) sapply(x, function(z, y) z-y, y=y) 
gvec = function(x) sapply(x, function(y) integrate(fvec, lower=2, upper=3, y=y)$val)

然后我在 y=2 时评估 gvec

a=gvec(2)

并且代码有效。

但是,如果我引入第三个变量并尝试应用相同的过程:

fvec = function(x, y, w) sapply(x, function(z, y, w) z-y+w, y=y, w=w) 

gvec = function(x,t) sapply(x, function(y,w) integrate(fvec, lower=2, upper=3, y=y, w=w)$val)

b=gvec(2,2)

R 给我以下错误:

FUN(X[[i]], ...) 中的错误:缺少参数“w”,没有默认值

我不明白为什么,非常感谢您的帮助。 谢谢

【问题讨论】:

    标签: r function sapply integrate


    【解决方案1】:

    这行有错别字

    gvec = function(x,t) sapply(x, function(y,w) integrate(fvec, lower=2, upper=3, y=y, w=w)$val)
    

    您在开始时调用变量 t,然后将其称为 w。此版本按预期工作:

    gvec = function(x,t) sapply(x, function(y,w) integrate(fvec, lower=2, upper=3, y=y, w=t)$val)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-22
      • 2020-10-20
      • 2021-10-15
      • 2017-04-14
      • 2014-08-17
      • 2017-01-18
      • 1970-01-01
      • 2018-03-03
      相关资源
      最近更新 更多