본문 바로가기
Python/numpy

파이썬 numpy.histogram 함수 활용하기

by PySun 2024. 10. 8.
반응형

파이썬 NumPy: numpy.histogram 함수로 데이터 분포 시각화하기

데이터 분석의 첫걸음은 데이터를 이해하는 것입니다. 파이썬의 NumPy 라이브러리는 이를 위한 많은 기능을 제공하는데, 그중에서도 numpy.histogram 함수는 데이터의 분포를 시각화하여 패턴과 추세를 쉽게 식별할 수 있도록 돕습니다. 오늘은 이 강력한 도구를 활용해 보겠습니다!

numpy.histogram 함수 소개

numpy.histogram 함수는 입력된 데이터의 히스토그램을 계산하는 데 사용됩니다. 이 함수는 데이터를 지정된 구간(bin)으로 나누고 각 구간의 데이터 개수를 세어 분포를 나타내는 유용한 도구로 활용됩니다.

함수 시그니처

numpy.histogram(a, bins=10, range=None, density=False)

매개변수:

  • a: 히스토그램을 생성할 데이터를 담고 있는 배열입니다.
  • bins: 데이터의 구간 수 또는 구간의 경계를 정의합니다. 기본값은 10입니다.
  • range: 데이터의 최소 및 최대 값을 설정하는 튜플입니다. 지정하지 않으면 자동으로 결정됩니다.
  • density: True로 설정할 경우, 구간에 대한 확률 밀도를 반환합니다. 기본값은 False입니다.

반환 값:

  • 첫 번째 반환 값은 각 구간에 해당하는 데이터 개수가 담긴 배열입니다.
  • 두 번째 반환 값은 각 구간의 경계를 나타내는 배열입니다.

사용 예제

기본 예제

다음은 numpy.histogram 함수를 사용하여 랜덤하게 생성된 데이터의 분포를 나타내는 기본 예제입니다.

import numpy as np
import matplotlib.pyplot as plt

# 랜덤 데이터 생성
data = np.random.randn(1000)

# 히스토그램 계산
hist, bins = np.histogram(data, bins=30)

# 히스토그램 시각화
plt.hist(data, bins=30, alpha=0.5, color='blue', label='Histogram')
plt.xlabel('Value')
plt.ylabel('Frequency')
plt.title('Histogram of Random Data')
plt.legend()
plt.show()

확률 밀도 함수 예제

확률 밀도 함수를 계산하려면 density=True를 설정하면 됩니다. 아래는 그 예입니다.

import numpy as np
import matplotlib.pyplot as plt

# 랜덤 데이터 생성
data = np.random.randn(1000)

# 히스토그램 계산 (확률 밀도)
hist, bins = np.histogram(data, bins=30, density=True)

# 히스토그램 시각화
plt.hist(data, bins=30, alpha=0.5, color='green', density=True, label='Probability Density')
plt.xlabel('Value')
plt.ylabel('Density')
plt.title('Probability Density Function of Random Data')
plt.legend()
plt.show()

결론

numpy.histogram 함수는 데이터의 분포를 분석할 수 있는 뛰어난 도구입니다. 이를 활용하여 데이터의 패턴과 특성을 쉽게 이해하고, 시각화함으로써 좀 더 깊이 있는 데이터 분석이 가능해집니다.

  • 당신의 데이터가 숨기고 있는 이야기를 히스토그램을 통해 발견해 보세요!
  • 지금 바로 numpy.histogram을 활용하여 데이터 분석의 새로운 차원을 경험해 보시기 바랍니다!
반응형