Я отправлю свой ответ, предполагая, что это не часть домашнего задания для класса.
Вопрос предоставляет информацию о среднем и дисперсии распределения, которые равны 38 и 5 соответственно. Предполагая гауссово распределение, мы можем ответить на вопрос, подставив соответствующие значения в кумулятивную функцию распределения . Для расчета CDF мы используем scipy
.
Первый вопрос задает «долю фермеров, использующих более 50 литров пестицидов в неделю». В коде это переводится в:
from scipy.stats import norm
print(1 - norm.cdf(50, 38, 5)) # 0.008197535924596155, or ~ 0.8 percent
Обратите внимание, что мы вычитаем из 1, поскольку вопрос требует 50 или более, а не до 50, что мы получили бы, если бы использовали значение, возвращаемое функцией CDF как есть.
Для (b) мы можем сделать
print(norm.cdf(10, 38, 5)) # 1.0717590258310887e-08
Это даст нам долю фермеров, использующих 10 литров пестицидов или меньше.
В отношении последнего вопроса мы можем применить тот же подход, с небольшими изменениями:
print(norm.cdf(60, 38, 5) - norm.cdf(30, 38, 5)) # 0.9451952957565343
Сначала мы вычисляем norm.cdf(60, 38, 5)
, что дает нам долю фермеров, использующих 60 литров пестицидов или меньше. . Из этого мы вычитаем norm.cdf(30, 38, 5)
, то есть долю фермеров, которые используют 30 литров или меньше. По определению, это даст нам, фермерам, использовать количество пестицидов в диапазоне [30, 60]
, что и задается вопросом.
Что касается построения графика, здесь уже есть множество отличных ответов на SO , например этот . Я оставлю свой ответ для подобных тем.