Incanterで乱数を生成します
質問
Incanterの並列コルトで乱数ジェネレーターを使用するにはどうすればよいですか?
これらの依存関係をプロジェクトにリストしました。cljファイル:
:依存関係[[org.clojure/clojure "1.2.0"] [org.clojure/clojure-contrib "1.2.0"
そして、私は試してみました(cern.jet.random.tdouble normalをインポートします)、クラスjava.lang.classnotfoundexceptionを取得します。
ここで何が間違っているのですか?
解決
Liebkeはここであなたのドメイン固有のニーズに対処したかもしれませんが、再インポートしてください。
1)必ず実行してください lein deps
2)の構文 import
は (import [cern.jet.random.tdouble Normal])
また (import cern.jet.random.tdouble.Normal)
他のヒント
Incanterで乱数を生成するために、平行コルトを直接呼び出す必要はありません。 2つの異なる方法があります。
まず、incanter.statsには元の乱数ジェネレーター関数があります。
sample-normal
sample-poisson
sample-uniform
sample-t
sample-net-binomial
sample-binomial
etc..
各関数は、最初の引数として生成する値の数と、描画する分布のパラメーターを設定するためのオプションのargを取得します。たとえば、平均-2の正規分布と0.5の標準偏差から100の値を描画するには、これを行います。
(use '[incanter core stats])
(sample-normal 100 :mean -2 :sd (sqrt 0.5))
乱数を生成する2番目の方法は、incanter.distributions namespaceで関数を使用することです。
(require '[incanter.distributions :as dist])
(dist/draw (dist/normal-distribution -2 (sqrt 0.5)))
所属していません StackOverflow