【问题标题】:How to plot a product function in R?如何在 R 中绘制乘积函数?
【发布时间】:2015-11-08 16:40:27
【问题描述】:

我正在尝试一个问题,但首先我必须在 r 中绘图

(x+1)(x+2)...(x+n),

n 是一个固定整数。

知道如何创建这个例程吗?

【问题讨论】:

  • 这只是 $n$ 倍的分数...
  • 是的,但在 R 中对我来说并不容易
  • 你的问题不是很清楚。我不知道你真正想要什么。为什么公式中没有索引$i$?
  • 对不起,有一个错误,是 1/(x+i)

标签: r plot gamma-function


【解决方案1】:

如果x 大于-1,这可能通过利用关系来最有效地计算

(x + 1)*(x + 2)* ... *(x + n) = Gamma(x+n+1) / Gamma(x+1).

Gamma 是根据它们的对数在内部计算的,因此请以 lgamma 的形式使用这些日志:

f <- function(x, n) exp(lgamma(x+n+1) - lgamma(x+1))

然后可以通过 curve 获得一个图,例如

curve(f(x,3), 0, pi)

【讨论】:

    【解决方案2】:

    你想要这样的东西吗?

    f <- function(x, n) {
      return(prod(1/(x+(1:n))))
    }
    

    【讨论】:

    • 这不会直接使用 curve 绘制,例如,因为它没有矢量化。
    猜你喜欢
    • 2020-07-15
    • 2015-12-09
    • 2020-11-17
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    相关资源
    最近更新 更多