問題タブ [normal-distribution]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 相関ガウス確率変数の積分の計算
(X,Y) を、平均が 0 で共分散行列が S の 2 次元正規確率変数とします。さらに、Q = [0,1]x[0,1] を単位正方形とし、それを均一にグリッド化します。各辺に N 個のグリッド ポイントがあります。その結果、Q は N x N 正方形の和集合であることがわかります。MATLAB でそのような正方形ごとに (X,Y) の限界を計算する必要があります。つまり、要素が次の形式の N x N 積分である行列 I を計算する必要があります。
whereはパーティションの要素です。貪欲な方法は、i と j の 2 つのループを実行し、これらの積分のそれぞれを数値的に計算することです。ただし、S が対角の場合は、はるかに効率的なトリックを実行できます。最初に X の分布 (1 つの行ベクトル) を計算し、次に Y の分布 (列ベクトル) を計算し、最後にそれらのクロネッカー積を取得します。正しい行列 I が得られます。
ただし、相関がある場合、つまり S が対角行列でない場合、このようなトリックは機能しません。このような場合、2 つのループを実行する必要がありますか、それともより良い方法がありますか?
cuda - cudaカーネル内で乱数を生成する
正規分布に従って生成される確率変数を生成する必要がある cuda プログラムを作成しています。確率変数の値を 0 から 8 の間に制限したいので、確率変数をカーネル関数内で生成し、確率変数の結果をさらに使用するために使用します。その目的で cuRAND ライブラリを使用する予定です。curand_normal デバイス API を使用して値を生成しようとしましたが、成功しませんでした。誰かがカーネル関数のコードを提供してくれると非常に助かります。ご協力ありがとうございました。
以下に提供するコードは、 gpu で探しているものの cpu 実装です。
私が C++ を知らず、他のサイトで見た他のコードに従ってこのプログラムを作成したことを追加したいと思います。ありがとう。
statistics - 変数の対数を取るとはどういう意味ですか?
変数の対数を取ることに関する質問 (統計問題)
たとえば、「人口別のコンピュータ注文のコスト」のデータを表示する棒グラフがあり、データを分析して分布を見つけようとしているとします。情報は何も示していないため、変数の対数をとると、グラフは正規分布に似ています。正規分布は基本的に平均を意味することは知っていますが、情報の対数を取ることは何を示していますか?
python - Python の e^(正規分布変数) の積は 1.0 と等しくありませんか?
平均が 0 の正規分布変数の合計の平均はゼロです。それはうまくいきます。e を平均 0 の正規分布変数に乗じた積は 1 になるはずです。しかし、Python でそれを行うと、1 より大きい積が得られます。これについて何か説明はありますか?
1.0を出力すべきではありませんか?製品変数の期待値は 1.0 であり、すべての製品変数の平均は 1.0 である必要があります。では、なぜ 1.05 が出力されるのでしょうか。(反復回数と標準偏差を変更すると、出力が変更されますが、常に 1 よりも大きくなります)。助けてくれてありがとう!
java - Javaのランダム正規分布は範囲外の値を返します
重複の可能性:
Random.nextGaussian() の問題
私は、ランダムな正規分布を作成し、50 の値を与える小さな Java アプリケーションの開発に取り組んでいます。私は mean = 0.0 と std = 1.0 を使用していますが、範囲外の結果が得られた問題は、 0.0 未満の値と 1.0 を超える値があります。誰か助けてもらえますか?
以下は私が使用したコードです:
r - R - -1 から 1 の間の特定の形状のデータを生成します
この画像のように配布されるRでデータを生成しようとしました:
値は実際には -1 と +1 の間にのみ存在する必要がありますが、0 と +1 と比較して -1 と 0 の間にある必要があります。
r - 加重ヒストグラムの上に正規曲線をプロットする
データのために加重ヒストグラムをプロットする必要があるデータセットがあります
加重ヒストグラムを使用し、
また
これにより、素敵なグラフが得られますが、その上に通常の曲線を描くことができません。2 つのプロットからわかるように、(-1.5,-1) カテゴリにデータがない可能性がありますが、それでもプロットして、y 軸の範囲 (0,120) を維持したいと思いますが、最大値は約 40 です。 .
曲線を追加するためにこれらの2つのコードを試しましたが、完全に正しいわけではありません
この曲線は私のプロットの左側にあるようです。
これにより、x 軸に対してほぼ平坦な水平線が得られます。
ありがとうございました!
r - バッチ正規分布検定
バッチ正規分布テストを実行しようとしています。
私のデータは次のようになります。
各 の下の時間の分布を確認したいEmployee_ID
。
これを行うバッチ方法はありますか?私は80歳以上IDs
です。したがって、それぞれを個別に取得ID
し、それを説明する統計をプロット/作成するのはかなり面倒です。
ありがとう
java - 多変量正規分布で確率を計算する
私の質問は数学とCSの両方の問題に対応していますが、パフォーマンスの高い実装が必要なので、ここに投稿します。
問題:
Python行列として定義された推定正規二変量分布がありますが、Javaで同じ計算を転置する必要があります。(ここにダミーの値)
inuptで整数値(x、y)の列ベクトルを受け取ったとき、その指定されたタプルの確率を計算したいと思います。
さて、材料の観点から、これは私の法線の確率密度関数の積分に3.5 < x < 4.5
なります。2.5 < y < 3.5
私が知りたいこと:
これの効果的な実装を回避する方法はありますか?それは、行列上で定義された式と二重積分を処理することを意味しますか?それに加えて、自分で実装しなければならない場合は時間がかかりますが、これは計算コストが高くなります。おおよその解決策は私にとっては完全にうまくいくでしょう。
私の推論:
単変量正規分布では、累積分布関数を使用するだけで済みます(または、標準分布関数の値を保存してから正規化することもできます)が、残念ながら、多変量の閉じた累積分布関数形式はないようです。
単変量の別のアプローチは、二変量近似の逆関数を使用することです(つまり、正規分布を二項式として近似します)が、これを多変量に拡張すると、共分散をカウントし続ける方法がわかりません。
誰かがすでにこれを実装していることを本当に望んでいます。すぐに必要になり(私の論文を完成させます)、何も見つかりませんでした。
r - Rでオーバーレイされた横向きのプロットを描画する
私はRに次のコードを持っています。
このコードは、2つのドットバンドを持つプロットを生成します。パワーポイントを使用して、これらのバンドに通常の曲線を横向きにオーバーレイしました。実際の平均とsd値を使用して、R(横方向の正規曲線を描く)でこれを行うにはどうすればよいですか?注:繰り返しますが、通常の曲線はプロットの一部ではありません。上記のコードは、生のプロットを生成するだけです。