Вычисление ECDF
В этом упражнении вы напишете функцию, которая принимает одномерный массив данных и возвращает значения x и y для ECDF. Эта функция понадобится вам снова и снова — как в этом курсе, так и в его продолжении. ECDF относится к числу наиболее важных инструментов статистического анализа. Вы можете написать собственную функцию foo(x,y) по следующему шаблону:
def foo(a,b):
"""State what function does here"""
# Computation performed here
return x, y
Функция foo() принимает два аргумента — a и b — и возвращает два значения: x и y. Заголовок функции def foo(a,b): содержит сигнатуру foo(a,b), которая включает имя функции и её параметры.
Это упражнение является частью курса
Статистическое мышление на Python (часть 1)
Инструкции к упражнению
- Определите функцию с сигнатурой
ecdf(data). В теле функции:- Вычислите количество точек данных
nс помощью функцииlen(). - Значения \(x\) — это отсортированные данные. Для сортировки используйте функцию
np.sort(). - Значения \(y\) для ECDF равномерно распределены от
1/nдо1. Постройте их с помощьюnp.arange(). Помните, что конечное значение вnp.arange()не включается в результат, поэтому диапазон должен идти от1доn+1. Не забудьте разделить результат наn. - Функция должна возвращать значения
xиy.
- Вычислите количество точек данных
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
def ecdf(data):
"""Compute ECDF for a one-dimensional array of measurements."""
# Number of data points: n
____ = ____(____)
# x-data for the ECDF: x
____ = ____(____)
# y-data for the ECDF: y
____ = ____(____, ____) / n
return x, y