如何在python中找到高于第二个标准差的值的百分比?

问题陈述 - 假设变量 X 有一个钟形分布,平均值为 150,标准差为 20。 X 值在 190 以上的百分比是多少?

到目前为止我的代码:

import numpy as np
import math
import scipy.stats

X=scipy.stats.norm(150,20)

我知道 X 的 68% 位于 1 个标准偏差内,即(在 130 到 170 之间)和 95% 在 2 个标准偏差(110 到 190)内。

但是如何找到高于 190 的值的百分比? (我写了 2.50 作为答案,但它不正确)

stack overflow How to find percentage of values above the second standard deviation in python?
原文答案
author avatar

接受的答案

使用 sf() (参见 https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html 的“方法”部分):

import scipy.stats

scipy.stats.norm(150, 20).sf(190) # result: 0.022750131948179195

答案: