scipy.stats.rv_discrete.
expect#
- rv_discrete.expect(func=None, args=(), loc=0, lb=None, ub=None, conditional=False, maxcount=1000, tolerance=1e-10, chunksize=32)[源代码]#
通过数值求和计算离散分布函数相对于分布的期望值。
- 参数:
- func可调用对象, 可选
用于计算期望值的函数。只接受一个参数。默认是恒等映射 f(k) = k。
- args元组, 可选
分布的形状参数。
- loc浮点数, 可选
位置参数。默认为 0。
- lb, ub整数, 可选
求和的下限和上限,默认设置为分布的支持度,包括在内 (
lb <= k <= ub
)。- conditional布尔值, 可选
如果为 True,则期望值会根据求和区间的条件概率进行修正。返回值是函数 func 的期望值,该期望值取决于给定的区间(k 满足
lb <= k <= ub
)。默认为 False。- maxcount整数, 可选
要评估的最大项数(以避免无限循环求和)。默认为 1000。
- tolerance浮点数, 可选
求和的绝对容差。默认为 1e-10。
- chunksize整数, 可选
以这个大小的块迭代分布的支持度。默认为 32。
- 返回:
- expect浮点数
期望值。
注释
对于重尾分布,期望值可能存在也可能不存在,具体取决于函数 func。如果它确实存在,但总和收敛缓慢,则结果的准确性可能相当低。例如,对于
zipf(4)
,均值和方差的示例精度仅为 1e-5。增加 maxcount 和/或 chunksize 可能会提高结果,但也可能使 zipf 非常缓慢。该函数不是向量化的。