0

これを行うための標準ライブラリ関数はありません。どうすれば効率的にできますか?

4

2 に答える 2

3

Scala Breeze、http: //www.scalanlp.org/ には、その stats.distributions パッケージにポアソン クラスがあります。

case class Poisson(mean: Double)(implicit rand: RandBasis = Rand)
于 2013-04-22T21:48:23.110 に答える
0

この回答をScalaに翻訳しました:

def recursive_poisson_helper(m:Long, r:Long, p:Double, i:Long):Double = {
  if (r == i) {
    p
  } else {
    recursive_poisson_helper(m, r, (p * m) / (i + 1), i + 1)
  }
}

def efficient_poisson(m:Long, r:Long): Double = {
  val p = math.exp(-m)
  recursive_poisson_helper(m, r, p, 0)
}
于 2013-04-22T20:03:25.060 に答える