gpt4 book ai didi

涉及向量的表达式上的 R curve()

转载 作者:行者123 更新时间:2023-12-02 01:15:20 24 4
gpt4 key购买 nike

我想绘制 x 的函数,其中 x 应用于向量。无论如何,最简单的是举一个简单的例子:

var <- c(1,2,3)
curve(mean(var)+x)
curve(mean(var+x))

虽然第一个有效,但第二个给出错误:'expr' 没有计算出长度为 'n' 的对象并且在 var + x 中:较长的对象长度不是较短对象长度的倍数

基本上我想找到这样一个函数的最小值:例如

optimize(function(x) mean(var+x), interval=c(0,1))

然后能够可视化结果。虽然优化功能有效,但我不知道如何让 curve() 也有效。谢谢!

最佳答案

函数需要向量化。这意味着,如果它计算一个向量,它必须返回一个相同长度的向量。如果将任何向量传递给 mean,结果始终是长度为 1 的向量。因此,mean 未被向量化。您可以使用 Vectorize:

f <- Vectorize(function(x) mean(var+x))
curve(f,from=0, to=10)

关于涉及向量的表达式上的 R curve(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12200024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com