Вычисление статистических показателей

У вас есть список из n чисел, и ваша задача — реализовать функцию calculate_statistics, которая вычисляет и возвращает определённые статистические показатели: среднее, медиану и моду.

Функция должна принимать один позиционный аргумент numbers (список чисел) и три именованных аргумента только для ключевых слов: mean, median и mode, каждый из которых по умолчанию имеет значение False. Функция должна вычислять и возвращать только те статистические показатели, которые установлены в True. Если ни один показатель не запрошен (все установлены в False), функция должна вернуть пустой словарь.

Вывод функции должен быть словарём, где ключи — названия статистических показателей, а значения — их вычисленные значения. Функция должна быть определена следующим образом:

def calculate_statistics(numbers, *, mean=False, median=False, mode=False):

Входные данные

Выходные данные

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mean=True)

{'mean': 5.222222222222222}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], median=True)

{'median': 5}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mode=True)

{'mode': [2, 8]}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mean=True, median=True, mode=True)

{'mean': 5.222222222222222, 'median': 5, 'mode': [2, 8]}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2])

{}

calculate_statistics([1, 2], median=True, mean=True, mode=True)

{'mean': 1.5, 'median': 1.5, 'mode': [1, 2]}

Примечание: В случае мультимодального набора данных функция должна вернуть все моды в виде списка, упорядоченного от меньшего к большему. Если набор данных не мультимодальный, функция должна вернуть единственную моду в списке. Если мода отсутствует, функция должна вернуть пустой список в качестве значения для 'mode'.

Среднее

Среднее списка чисел — это сумма всех чисел, делённая на их количество.

Медиана

Медиана — это среднее значение в упорядоченном от меньшего к большему наборе данных.

Мода

Мода — это число, которое встречается наиболее часто в наборе данных.

Набор данных может иметь одну моду, несколько мод или не иметь моду вовсе.

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue