Python에서 누적 분포 함수 계산

Najwa Riyaz 2023년1월30일
  1. numpy.arange()를 사용하여 Python에서 CDF를 계산합니다
  2. numpy.linspace()를 사용하여 Python에서 CDF를 계산합니다
Python에서 누적 분포 함수 계산

용어 누적 분포 함수 또는CDF는 함수y=f(x)입니다. 여기서y는 분포에서 무작위로 선택되는 정수x또는x보다 낮은 숫자의 확률을 나타냅니다.

NumPy라이브러리의 다음 함수를 사용하여 Python에서 계산됩니다.

  1. 균등 한 간격 값의ndarray를 반환하는numpy.arange()함수.
  2. 주어진 간격 내에서 균일 한 간격의 값의ndarray를 반환하는numpy.linspace()함수.

numpy.arange()를 사용하여 Python에서 CDF를 계산합니다

NumPy표준 라이브러리에는 Python에서 CDF를 결정하는 데 사용되는arange()함수가 포함되어 있습니다.

이를 위해 먼저NumPy라이브러리를 가져 오십시오.

arange()함수는 균등 한 간격 값의ndarray를 반환합니다.

다음은 Python에서numpy.arange()함수를 사용하여 CDF 함수를 구현하는 방법을 보여주는 예입니다.

import matplotlib.pyplot as plt
import numpy

data = numpy.random.randn(5)
print("The data is-", data)
sorted_random_data = numpy.sort(data)
p = 1.0 * numpy.arange(len(sorted_random_data)) / float(len(sorted_random_data) - 1)
print("The CDF result is-", p)

fig = plt.figure()
fig.suptitle("CDF of data points")
ax2 = fig.add_subplot(111)
ax2.plot(sorted_random_data, p)
ax2.set_xlabel("sorted_random_data")
ax2.set_ylabel("p")

여기서randn()함수는 표준 정규 분포를 사용하여 데이터 샘플을 반환하는 데 사용됩니다. randn(5)이 언급되었으므로 1Darray는 5 개의 임의 값으로 빌드됩니다.

다음으로sort()함수를 사용하여 데이터를 정렬 한 다음arange()함수를 사용하여 CDF를 계산합니다.

출력 :

The data is- [ 0.14213322 -1.28760908  0.94533922  0.82004319  1.08232731]
The CDF result is- [0.   0.25 0.5  0.75 1.  ]

그래프는 CDF 기능에 따라 표시됩니다.

파이썬 cdf

numpy.linspace()를 사용하여 Python에서 CDF를 계산합니다

NumPy표준 라이브러리에는 Python에서 CDF를 결정하는 데 사용되는linspace()함수가 포함되어 있습니다. 이를 위해 먼저NumPy라이브러리를 가져옵니다.

linspace()함수는 지정된 간격 동안 균등 한 간격의 숫자의ndarray를 반환합니다.

다음은 Python에서numpy.linspace()를 사용하여 CDF 함수를 구현하는 방법을 보여주는 예입니다.

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(5)
print("The data is-", data)
sorted_random_data = np.sort(data)
np.linspace(0, 1, len(data), endpoint=False)

print("The CDF result using linspace =\n", p)

fig = plt.figure()
fig.suptitle("CDF of data points")
ax2 = fig.add_subplot(111)
ax2.plot(sorted_random_data, p)
ax2.set_xlabel("sorted_random_data")
ax2.set_ylabel("p")

여기서randn()함수는 표준 정규 분포를 사용하여 데이터 샘플을 반환하는 데 사용됩니다. 다음으로sort()함수를 사용하여 데이터를 정렬 한 다음arange()함수를 사용하여 CDF를 계산합니다.

출력:

The data is- [-0.92106668 -0.05998132  0.02102705 -0.84778184  0.90815869]
The CDF result using linspace =
 [0.   0.25 0.5  0.75 1.  ]

그래프는 CDF 기능에 따라 아래와 같이 표시됩니다.

파이썬 cdf 2

관련 문장 - Python Math