Я пытаюсь восстановить PDF-файл распределения хи-квадрат с 3 степенями свободы из смоделированного образца. Вот мой код на Python:
import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt
norm = stats.norm(0, 1)
x1 = [x * x for x in np.random.randn(1000)]
x2 = [x * x for x in np.random.randn(1000)]
x3 = [x * x for x in np.random.randn(1000)]
f = x1 + x2 + x3
plt.hist(f, 100)
plt.show()
В результате я получил вот что.
Конечно, это неправильно. Как показано в Википедии, PDF-файл распределения хи-квадрат с 3 степенями свободы должен сначала идти вверх от нуля, а потом идти вниз, а не то, что продолжает расти, как у меня. Что-то не так с моим кодом? Я использовал следующую формулу:
Q = x1^2 + x2^2 + x3^2
где x1, x2 и x3 - независимые стандартные нормальные случайные величины.