@DemonDED

Как в python можно реализовать эмпирическую функцию распределения?

Здравствуйте, мне бы хотелось узнать как можно реализовать в python отрисовку эмперической функции вида:
img54.gif
с выборкой:
[-1.97, -0.736, -0.152, -0.049, -0.044, -0.029, 0.089, 0.306, 0.349, 0.413,
0.48, 0.518, 0.666, 0.691, 0.748, 0.834, 0.865, 0.866, 0.929, 0.974,
1.024, 1.096, 1.138, 1.197, 1.221, 1.258, 1.296, 0.426, 1.461, 1.537,
1.589, 1.679, 1.783, 1.833, 1.9, 1.922, 1.938, 1.954, 1.965, 1.976,
2.039, 2.047, 2.076, 2.261, 2.295, 2.453, 2.569, 2.604, 2.963, 3.031]
Пробовал в matplotlab и tkinter но дальше ступенчатой не ушел, заранее спасибо за помощь!
  • Вопрос задан
  • 3922 просмотра
Решения вопроса 1
@dmshar
Пусть lst - это ваш список. Тогда.
В зависимости от того, что на самом деле вам надо, можно так:
plt.hist(lst, histtype='step', cumulative=True, bins=len(lst))

результат:
618ec954800d1793865069.png

Можно так:
bin_dt, bin_gr = np.histogram(lst, bins=len(lst))
Y = bin_dt.cumsum()
for i in range(len(Y)):
    plt.plot([bin_gr[i], bin_gr[i+1]],[Y[i], Y[i]],color='green')


Результат:
618ec9cfabd0f489842340.png

Можно так:
import seaborn as sns
sns.kdeplot(lst, cumulative=True)


Результат:
618eca10f1413441842508.png
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы