[解決済み] MATLABでヒストグラムを正規化する方法は?
2022-02-17 17:36:12
質問
確率密度関数下の面積が1になるように、ヒストグラムを正規化するには?
解決方法は?
これに対する私の回答は、あなたの 以前の質問 . 確率密度関数の場合。 空間全体にわたる積分は 1 . 合計で割ると ではない で、正しい密度が得られます。正しい密度を得るには、面積で割る必要があります。私の主張を説明するために、次の例を試してみてください。
[f, x] = hist(randn(10000, 1), 50); % Create histogram from a normal distribution.
g = 1 / sqrt(2 * pi) * exp(-0.5 * x .^ 2); % pdf of the normal distribution
% METHOD 1: DIVIDE BY SUM
figure(1)
bar(x, f / sum(f)); hold on
plot(x, g, 'r'); hold off
% METHOD 2: DIVIDE BY AREA
figure(2)
bar(x, f / trapz(x, f)); hold on
plot(x, g, 'r'); hold off
どの方法が正しい答え(赤い曲線)と一致するかは、ご自身でお確かめください。
ヒストグラムを正規化するもう一つの方法(方法2より簡単)は,次のように割り算することです。
sum(f * dx)
これは、確率密度関数の積分を表すものであり、すなわち
% METHOD 3: DIVIDE BY AREA USING sum()
figure(3)
dx = diff(x(1:2))
bar(x, f / sum(f * dx)); hold on
plot(x, g, 'r'); hold off
関連
-
[解決済み] Matlabのfprintfを使用してテーブルを作成する
-
[解決済み] Matlab: 逆コサイン(acos)の完全解を返す
-
[解決済み] MATLABでカラーバーのスケールを制御する
-
[解決済み] matlab で "カラーマップ" プロットを作成するにはどうすればよいですか?
-
[解決済み] なぜSIFTはMatlabで利用できないのですか?
-
[解決済み] Wolfram AlphaとMATLABでは伝達関数のプロットが異なる
-
[解決済み] MATLABでベクトルの線形スパンを求める
-
[解決済み] 行列の行にノルム関数を適用する - Matlab [duplicate]
-
[解決済み] RGBカラーによるMATLABプロット
-
[解決済み] gnuplot を使ったヒストグラムは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】MATLABの&と&&の違いは何ですか?
-
[解決済み] KroneckerDelta - matlab
-
[解決済み] セルコンテンツから非セル配列オブジェクトへの代入
-
[解決済み] エラー: 等号の左側にある式は代入の対象として有効ではありません Matlab
-
[解決済み] ベクトルにおける四分位値の0.25から0.75までの数値 MATLAB
-
[解決済み] Matlabで固有ベクトルを正しくプロットする
-
[解決済み] Matlab Error: ポジション1のインデックスが配列の境界を越えています
-
[解決済み] 指定された矩形に含まれる配列中の点を見つける( matlab )
-
[解決済み] MatlabのA=[x; y']は何を意味するのですか?
-
[解決済み] Matlab: 小図形ウィンドウでYラベルが表示されない