Предположим, у нас есть два независимых нормальных распределения
Как рассчитать вероятность того, что определенная точка, взятая из распределения X1, будет less than or equal to
определенной точкой, взятой из распределения X2 в Python?
Относительно этого могу сказать, что формула для greater than
могла бы быть примерно такой,
Пример,
m1, std1 = 1, 2
m2, std2 = 2, 3
#then,
и,
# hence,
from scipy.stats import norm
p = 1 - norm.cdf(-(m1 - m2) / np.sqrt(std1 + std2))
# p = 0.32736042300928847
Ищу код для
Предполагая, что они имеют одинаковое среднее значение l, вероятность будет равна 50%. Распределение не имеет значения. Поэтому лучше всего в этом контексте нормализовать распределения, чтобы они имели одинаковое среднее значение.
Пусть Y будет X₁ - X₂. Вы уже показали, что Y ~ N (μ₁ - μ₂, σ₁² + σ₂²). Вы хотите P (Y ≤ 0). Это CDF Y, оцененный как 0.
В коде:
from math import sqrt
from scipy.stats import norm
m1, std1 = 1, 2
m2, std2 = 2, 3
m = m1 - m2
std = sqrt(std1**2 + std2**2)
print(norm.cdf(0, loc=m, scale=std))
Выход
0.6092443525006433
Я не понял, как вы пришли к 50%. Обратите внимание, что параметры
m1, std1 = 1, 2 m2, std2 = 2, 3
являются экспериментальными,std1, std2
могут принимать любые значения,0.0236, .63
и т. д. Можете ли вы уточнить свой ответ в коде Python?