TGViewer
Data Science | Вопросы собесов Data Science | Вопросы собесов @easy_ds · 4.89K subscribers
Post #2493 379
🤔 Как можно сравнивать два ненормальных распределения?

🚩Непараметрические тесты

🟠Тест Манна-Уитни (U-тест Манна-Уитни)
Используется для сравнения двух независимых выборок. Тест проверяет, различаются ли распределения значений между двумя группами.
from scipy.stats import mannwhitneyu

data1 = [1, 2, 3, 4, 5]
data2 = [2, 3, 4, 5, 6]
stat, p = mannwhitneyu(data1, data2)
print(f'U-статистика: {stat}, p-значение: {p}')


🟠Тест Уилкоксона (Wilcoxon signed-rank test)
Используется для сравнения двух связанных выборок или парных наблюдений.
from scipy.stats import wilcoxon

before = [20, 30, 40, 50, 60]
after = [21, 29, 39, 51, 59]
stat, p = wilcoxon(before, after)
print(f'W-статистика: {stat}, p-значение: {p}')


🟠Критерий Колмогорова-Смирнова (Kolmogorov-Smirnov test)
Используется для сравнения формы двух распределений.
from scipy.stats import ks_2samp

data1 = [1, 2, 3, 4, 5]
data2 = [2, 3, 4, 5, 6]
stat, p = ks_2samp(data1, data2)
print(f'KS-статистика: {stat}, p-значение: {p}')


🚩Визуализация

🟠Гистограммы и плотности
Построение гистограмм и графиков плотности для визуального сравнения распределений.
import matplotlib.pyplot as plt
import seaborn as sns

data1 = [1, 2, 3, 4, 5]
data2 = [2, 3, 4, 5, 6]

sns.histplot(data1, kde=True, color='blue', label='Data1', alpha=0.5)
sns.histplot(data2, kde=True, color='red', label='Data2', alpha=0.5)
plt.legend()
plt.show()


🟠Boxplots (ящики с усами)
Помогают сравнить распределения и выявить отличия в медиане, квартилях и выбросах.
data1 = [1, 2, 3, 4, 5]
data2 = [2, 3, 4, 5, 6]

plt.boxplot([data1, data2], labels=['Data1', 'Data2'])
plt.show()


🚩Другие методы

🟠Коэффициент Спирмена (Spearman's rank correlation)
Проверяет монотонную связь между двумя выборками.
from scipy.stats import spearmanr

data1 = [1, 2, 3, 4, 5]
data2 = [2, 3, 4, 5, 6]
corr, p = spearmanr(data1, data2)
print(f'Корреляция Спирмена: {corr}, p-значение: {p}')


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 1
More from @easy_ds
  1. Oct 12, 2026Post #2704
  2. Oct 12, 2026🤔 Как решить задачу, где присутствует одновременно два target – один categorical, другой…
  3. Oct 12, 2026🤔 Как происходит детекция без anchor box-ов? Обнаружение объектов без использования ancho…
  4. Oct 12, 2026Post #2701
  5. Oct 11, 2026🤔 Что такое декоратор? Это функция, модифицирующая или расширяющая поведение другой функц…
  6. Oct 11, 2026Post #2699
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →