Код Senior Бутстреп и перестановки обновлено
Точный перестановочный тест на Python
Условие
Напишите permutation_p(a, b): точный двусторонний перестановочный тест для разницы средних. Переберите ВСЕ способы выбрать len(a) позиций из объединённого списка a + b для группы A (itertools.combinations по индексам), для каждого посчитайте |mean(B) - mean(A)|. p-value это доля разбиений, где разница не меньше наблюдаемой (сравнение с допуском 1e-9). Верните round(p, 4). Размер входа маленький (до 12 элементов).
Примеры
permutation_p([1, 2, 3], [4, 5, 6]) // 0.1
permutation_p([1, 2, 3], [1, 2, 3]) // 1
permutation_p([10, 12, 11, 9], [14, 15, 13, 16]) // 0.0286
Как подойти
Подсказки: 3
itertools.combinations(range(n), len(a))- Сумма B = общая сумма минус сумма A.
- Допуск при сравнении float.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.