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)[source]#
通过数值求和计算关于离散分布的函数的期望值。
- 参数:
- funccallable, optional
计算期望值的函数。只接受一个参数。默认是恒等映射 f(k) = k。
- argstuple, optional
分布的形状参数。
- locfloat, optional
位置参数。默认值为 0。
- lb, ubint, optional
求和的下界和上界,默认为分布的支持集,包含边界(
lb <= k <= ub
)。- conditionalbool, optional
如果为 true,则期望值通过求和区间的条件概率进行校正。 返回值是函数 func 的期望值,条件是在给定的区间内(k 满足
lb <= k <= ub
)。 默认值为 False。- maxcountint, optional
要评估的最大项数(以避免无限循环的无限和)。 默认值为 1000。
- tolerancefloat, optional
求和的绝对容差。 默认值为 1e-10。
- chunksizeint, optional
以该大小的块迭代分布的支持集。 默认值为 32。
- 返回:
- expectfloat
期望值。
注释
对于重尾分布,期望值可能存在或不存在,具体取决于函数 func。 如果它确实存在,但总和收敛缓慢,则结果的准确性可能相当低。 例如,对于
zipf(4)
,均值、方差的精度在示例中仅为 1e-5。 增加 maxcount 和/或 chunksize 可能会改善结果,但也可能使 zipf 非常慢。该函数未向量化。