시작하기무료로 시작하기

공식 ECDF 값 계산하기

콜모고로프-스미르노프 검정을 수행하려면, 임의의 점에서 공식 ECDF(경험적 누적 분포 함수)의 값을 계산할 수 있어야 합니다. 즉, 데이터셋 data로부터 도출된 공식 ECDF의 값을, 배열 x의 각 원소에 대해 반환하는 함수 ecdf_formal(x, data)가 필요합니다. 아래 세 함수 중 두 개는 이 계산을 올바르게 수행하고, 하나는 그렇지 않습니다. 올바르게 계산하는 두 함수 중 하나는 더 빠릅니다. 각 함수에 적절한 레이블을 붙여 보세요.

참고로, ECDF는 공식적으로 ECDF(x) = (x 이하인 샘플 수) / (전체 샘플 수)로 정의됩니다. np.searchsorted()의 독스트링(doc string)도 확인해 보세요.

a)

def ecdf_formal(x, data):
    return np.searchsorted(np.sort(data), x) / len(data)

b)

def ecdf_formal(x, data):
    return np.searchsorted(np.sort(data), x, side='right') / len(data)

c)

def ecdf_formal(x, data):
    output = np.empty(len(x))

    data = np.sort(data)

    for i, x_val in x:
        j = 0
        while j < len(data) and x_val >= data[j]:
            j += 1

        output[i] = j

    return output / len(data)

이 연습은 강의의 일부입니다

통계적 사고 사례 연구

강의 보기

실습형 인터랙티브 연습문제

이론을 실습으로 바꾸는 인터랙티브 연습 중 하나를 만나보세요

연습 시작