본문 바로가기
파이썬/파이썬기본문법

파이썬 numpy 가우시안 분포(정규분포)

by flycoding 2023. 12. 22.
반응형

정규분포 - normal()

정규 분포는 가장 중요한 분포 중 하나이다.
독일 수학자 칼 프리드리히 가우스의 이름을 따서 가우스 분포라고도 불린다.
IQ 점수, 하트비트 등 많은 이벤트의 확률 분포에 적합하다.

 

정규 데이터 분포를 얻으려면 random.normal() 방법을 사용한다.
다음과 같은 세 가지 매개 변수가 있습니다:
loc - (평균) 벨의 정점이 존재하는 곳입니다.
scale - (표준 편차) 그래프 분포가 얼마나 평평해야 하는지를 나타냅니다.
size - 반환된 배열의 모양입니다.

크기 2x3의 랜덤 정규 분포 생성:

from numpy import random

x = random.normal(size=(2, 3))

print('x = random.normal(size=(2, 3)) : \n ', x)

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy 정규분포(normal distribution) normal() 함수 활용 예제

 

 

평균이 1이고 표준 편차가 2인 크기 2x3의 랜덤 정규 분포를 생성한다:

from numpy import random

x = random.normal(loc=1, scale=2, size=(2, 3))

print('x = random.normal(loc=1, scale=2, size=(2, 3)) : \n', x)

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy 정규분포(normal distribution) normal() 함수 활용 예제

 

파이썬 numpy 정규분포 시각화

from numpy import random
import matplotlib.pyplot as plt
import seaborn as sns

sns.distplot(random.normal(size=1000), hist=False)

plt.show()

위의 코드를 실행하면 아래 그림과 같다.

파이썬 numpy 정규분포 시각화 normal(size=1000, hist=false) show() 활용 예제

 

참고: 정규 분포의 곡선은 종 모양 곡선 때문에 종 곡선이라고도 한다.

 

이번 글에서 파이썬 numpy 정규분포(normal distribution)에 대해서 살펴보았다.

정규분포를 생성 및 활용을 위해서는 random.normal() 함수를 활용하며 loc, scale, size등의 매개변수를 설정하여 정규분포를 만들 수 있다.

꼭 손으로 눈으로 머리로 익히며 실습하기를 바란다.

모두 화이팅입니다.!!!

 

출처 : 이 글의 출처는 w3schools사이트를 참고하였으며 필자가 추가하여 정리한 글입니다.

반응형

댓글