类 EnumeratedDistribution<T>
java.lang.Object
org.hipparchus.distribution.EnumeratedDistribution<T>
- 类型参数:
-
T
- 样本空间中元素的类型。
- 所有已实现的接口:
-
Serializable
一个基于枚举的<值,概率>对列表的有限样本空间上的离散概率分布(维基百科)的通用实现。
输入概率必须都是非负的,但允许零值,它们的总和不必等于一。构造函数将对输入概率进行归一化,使它们总和为一。
<值,概率>对列表严格来说不必是一个函数,它可以包含空值。构造函数创建的概率质量函数将结合相等值的概率,并将空值视为相等。
例如,如果将对构造函数提供的对<"dog", 0.2>, <null, 0.1>, <"pig", 0.2>, <"dog", 0.1>, <null, 0.4>,则生成的概率质量函数将分配0.5的质量给null,0.3给"dog",0.2给null。
- 另请参阅:
-
构造器概要
-
方法概要
修饰符和类型方法说明static double[]
checkAndNormalize
(double[] weights) 检查权重既不是null也不是空,并且仅包含非负、有限、非NaN值,如有必要,将其归一化为总和为1。getPmf()
将概率质量函数作为(值,概率)对列表返回。double
probability
(T x) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(X = x)
。
-
构造器详细资料
-
EnumeratedDistribution
使用给定的概率质量函数枚举创建一个枚举分布。- 参数:
-
pmf
- 作为<T,概率>对列表枚举的概率质量函数。 - 抛出:
-
MathIllegalArgumentException
- 如果权重包含负数、NaN或无穷大值或仅为0
-
-
方法详细资料
-
probability
对于随机变量X
,其值根据此分布进行分布,此方法返回P(X = x)
。换句话说,此方法表示分布的概率质量函数(PMF)。请注意,如果
x1
和x2
满足x1.equals(x2)
,或者两者都为null,则probability(x1) = probability(x2)
。- 参数:
-
x
- 评估PMF的点 - 返回:
-
在
x
处的概率质量函数的值
-
getPmf
将概率质量函数作为(值,概率)对列表返回。请注意,如果在创建此EnumeratedDistribution时提供了重复和/或空值,则返回的列表将包含这些值。如果存在重复值,则返回的内容将不表示概率质量函数(即,由调用者负责合并重复的质量点)。
- 返回:
- 概率质量函数。
-
checkAndNormalize
public static double[] checkAndNormalize(double[] weights) 检查权重既不是null也不是空,并且仅包含非负、有限、非NaN值,如有必要,将其归一化为总和为1。- 参数:
-
weights
- 用作PMF值基础的输入数组 - 返回:
- 一个可能重新缩放的数组副本,总和为1且仅包含有效的概率值
- 抛出:
-
MathIllegalArgumentException
- 如果权重为null或空,或包含负数、NaN或无穷大值,或仅为0
-