类 NormalDistribution
java.lang.Object
org.hipparchus.distribution.continuous.AbstractRealDistribution
org.hipparchus.distribution.continuous.NormalDistribution
- 所有已实现的接口:
-
Serializable
,RealDistribution
正态(高斯)分布的实现。
- 另请参阅:
-
字段概要
从类继承的字段 org.hipparchus.distribution.continuous.AbstractRealDistribution
DEFAULT_SOLVER_ABSOLUTE_ACCURACY
-
构造器概要
-
方法概要
修饰符和类型方法说明double
cumulativeProbability
(double x) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(X <= x)
。double
density
(double x) 返回在指定点x
处评估的此分布的概率密度函数(PDF)。double
getMean()
访问均值。double
使用此方法获取此分布的均值的数值。double
使用此方法获取此分布的方差的数值。double
访问标准差。double
访问支持的下限。double
访问支持的上限。double
inverseCumulativeProbability
(double p) 计算此分布的分位函数。boolean
使用此方法获取有关支持是否连通的信息,即支持的下限和上限之间的所有值是否包含在支持中。double
logDensity
(double x) 返回在指定点x
处评估的此分布的概率密度函数(PDF)的自然对数。double
probability
(double x0, double x1) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(x0 < X <= x1)
。从类继承的方法 org.hipparchus.distribution.continuous.AbstractRealDistribution
getSolverAbsoluteAccuracy
-
构造器详细资料
-
NormalDistribution
public NormalDistribution()创建均值为零,标准差为一的正态分布。 -
NormalDistribution
使用给定的均值和标准差创建正态分布。- 参数:
-
mean
- 此分布的均值。 -
sd
- 此分布的标准差。 - 抛出:
-
MathIllegalArgumentException
- 如果sd <= 0
。
-
-
方法详细资料
-
getMean
public double getMean()访问均值。- 返回:
- 此分布的均值。
-
getStandardDeviation
public double getStandardDeviation()访问标准差。- 返回:
- 此分布的标准差。
-
density
public double density(double x) 返回在指定点x
处评估的此分布的概率密度函数(PDF)。一般来说,PDF 是CDF
的导数。如果在x
处导数不存在,则应返回适当的替代值,例如Double.POSITIVE_INFINITY
、Double.NaN
,或者差商的下限或上限。- 参数:
-
x
- 评估 PDF 的点 - 返回:
-
在点
x
处概率密度函数的值
-
logDensity
public double logDensity(double x) 返回在指定点x
处评估的此分布的概率密度函数(PDF)的自然对数。一般来说,PDF 是CDF
的导数。如果在x
处导数不存在,则应返回适当的替代值,例如Double.POSITIVE_INFINITY
、Double.NaN
,或者差商的下限或上限。请注意,由于浮点精度和下溢/上溢问题,对于某些分布,此方法比计算RealDistribution.density(double)
的对数更精确和更快。默认实现只是计算
density(x)
的对数。- 指定者:
-
logDensity
在接口中RealDistribution
- 覆盖:
-
logDensity
在类中AbstractRealDistribution
- 参数:
-
x
- 评估 PDF 的点 - 返回:
-
在点
x
处概率密度函数的对数
-
cumulativeProbability
public double cumulativeProbability(double x) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(X <= x)
。换句话说,此方法表示此分布的(累积)分布函数(CDF)。如果x
距离均值超过 40 个标准差,则返回 0 或 1,因为在这些情况下,实际值在 0 或 1 的Double.MIN_VALUE
范围内。- 参数:
-
x
- 评估 CDF 的点 - 返回:
-
随机变量具有此分布的概率小于或等于
x
的概率
-
inverseCumulativeProbability
计算此分布的分位函数。对于随机变量X
根据此分布分布,返回的值为inf{x in R | P(X<=x) >= p}
,对于0 < p <= 1
,inf{x in R | P(X<=x) > 0}
,对于p = 0
。
RealDistribution.getSupportLowerBound()
,对于p = 0
,RealDistribution.getSupportUpperBound()
,对于p = 1
。
- 指定者:
-
inverseCumulativeProbability
在接口中RealDistribution
- 覆盖:
-
inverseCumulativeProbability
在类中AbstractRealDistribution
- 参数:
-
p
- 累积概率 - 返回:
-
此分布的最小
p
分位数(p = 0
时为最大 0 分位数) - 抛出:
-
MathIllegalArgumentException
- 如果p < 0
或p > 1
-
probability
对于随机变量X
,其值根据此分布进行分布,此方法返回P(x0 < X <= x1)
。- 指定者:
-
probability
在接口中RealDistribution
- 覆盖:
-
probability
在类中AbstractRealDistribution
- 参数:
-
x0
- 下限(不包括)。 -
x1
- 上限(包括)。 - 返回:
-
随机变量服从此分布取值在
x0
和x1
之间的概率,不包括下限但包括上限。 - 抛出:
-
MathIllegalArgumentException
- 如果x0 > x1
。默认实现使用恒等式P(x0 < X <= x1) = P(X <= x1) - P(X <= x0)
-
getNumericalMean
public double getNumericalMean()使用此方法获取此分布的均值的数值。对于均值参数mu
,均值为mu
。- 返回:
-
均值或
Double.NaN
(如果未定义)
-
getNumericalVariance
public double getNumericalVariance()使用此方法获取此分布的方差的数值。对于标准差参数s
,方差为s^2
。- 返回:
-
方差(可能为
Double.POSITIVE_INFINITY
,如TDistribution
中的某些情况)或Double.NaN
(如果未定义)
-
getSupportLowerBound
public double getSupportLowerBound()访问支持的下限。此方法必须返回与inverseCumulativeProbability(0)
相同的值。换句话说,此方法必须返回
支持的下限始终为负无穷,无论参数如何。inf {x in R | P(X <= x) > 0}
。- 返回:
-
支持的下限(始终为
Double.NEGATIVE_INFINITY
)
-
getSupportUpperBound
public double getSupportUpperBound()访问支持的上限。此方法必须返回与inverseCumulativeProbability(1)
相同的值。换句话说,此方法必须返回
支持的上限始终为正无穷,无论参数如何。inf {x in R | P(X <= x) = 1}
。- 返回:
-
支持的上限(始终为
Double.POSITIVE_INFINITY
)
-
isSupportConnected
public boolean isSupportConnected()使用此方法获取有关支持是否连通的信息,即支持的下限和上限之间的所有值是否包含在支持中。此分布的支持是连通的。- 返回:
-
true
-