2016-12-10 7 views
0

Matlab을 사용하여 가우시안을 플롯하려고합니다. 내 코드는 이것과 같습니다. the image on link가우스 함수가 ​​범위를 벗어나는 값을주는 이유는 무엇입니까?

항상 0 사이의 값을 반환해야하므로 올바른 모양 만 y 축에 값이 내 지식 가우스 사항에 따라 4로 올라가고을 나타내는 확률 분포 함수이며처럼

a=1/(0.1*sqrt(2*3.14)) 
    y1=a*exp(-1*(((X1-Mu).^2)./(2*(Sigma^2)) )) 
    plot(X1,y1) 

내 그래프 보인다 내 구현이 맞다면 나는 불안한가?

+2

_thus는 항상 0과 1 사이의 값을 반환해야합니다. 올바르지 않습니다. 그 __area__는 1이어야합니다. –

+0

MATLAB은 Discrete이므로,'y1' 변수에'ts'를 곱해야합니다. ts는 샘플링 시간입니다. 예를 들어 t = -1 : 0.001 : 1이고, '0.001'은 샘플링 시간입니다. 진폭은 정규화됩니다. – Tes3awy

답변

0

예 확률 분포 함수이지만 매회 0에서 1 사이의 값을 반환 할 필요가 없습니다. 아래 그림에서 볼 수 있듯이, 가우스 그래프는 분산량이이고 평균이입니다.

enter image description here

0

구현이 올바른 것입니다. 가우시안은 확률 분포와 다른 확률 밀도 함수입니다. 전은 크거나 0보다 동일하지만 가망 X1의 전체 범위에 걸쳐 통합 될 때, 그 결과는 1

확률 분포와 동일 할 whos는 값 1

저급거나 동일해야 것들해야 있어야

사이드 노트로. Matlab은 가우시안 확률 밀도와 분포 함수 모두를 내장하고 있으며 각각 normpdfnormcdf입니다.