类 TTest

java.lang.Object
org.hipparchus.stat.inference.TTest

public class TTest extends Object
学生t检验的实现。

测试可以是:

  • 单样本或双样本
  • 单侧或双侧
  • 配对或非配对(用于双样本测试)
  • 同方差(等方差假设)或异方差(用于双样本测试)
  • 固定显著性水平(布尔值)或返回p值。

所有测试都提供测试统计数据。名称中包含“Test”的方法执行测试,所有其他方法返回t统计数据。在“Test”方法中,返回双精度值的方法返回p值;返回布尔值的方法执行固定显著性水平测试。显著性水平始终指定为0到0.5之间的数字(例如,95%水平的测试使用alpha=0.05)。

测试的输入可以是double[]数组或StatisticalSummary实例。

使用Hipparchus TDistribution实现来估计精确的p值。

  • 构造器概要

    构造器
    构造器
    说明
    TTest()
    空构造函数。
  • 方法概要

    修饰符和类型
    方法
    说明
    protected double
    df(double v1, double v2, double n1, double n2)
    计算2样本t检验的近似自由度。
    double
    homoscedasticT(double[] sample1, double[] sample2)
    在等子总体方差假设下,计算2样本t统计量。
    protected double
    homoscedasticT(double m1, double m2, double v1, double v2, double n1, double n2)
    在等子总体方差假设下,计算2样本t检验的t统计量。
    double
    homoscedasticT(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2)
    在等子总体方差假设下,比较由两个StatisticalSummary实例描述的数据集的均值的2样本t统计量。
    double
    homoscedasticTTest(double[] sample1, double[] sample2)
    返回与假设两个样本来自具有相等方差的子总体的两样本、双尾t检验相关的观察到的显著性水平p值
    boolean
    homoscedasticTTest(double[] sample1, double[] sample2, double alpha)
    执行评估sample1sample2是否来自具有相同均值的总体的双侧t检验,显著性水平为alpha,假设子总体方差相等。
    protected double
    homoscedasticTTest(double m1, double m2, double v1, double v2, double n1, double n2)
    计算在等子总体方差假设下的2侧、2样本t检验的p值。
    double
    返回与假设等子总体方差的两个StatisticalSummary实例描述的数据集的均值的两样本、双尾t检验相关的观察到的显著性水平p值
    double
    pairedT(double[] sample1, double[] sample2)
    基于输入数组中的数据,计算配对的2样本t统计量。
    double
    pairedTTest(double[] sample1, double[] sample2)
    返回基于输入数组中的数据计算的配对的2样本、双尾t检验的观察到的显著性水平p值
    boolean
    pairedTTest(double[] sample1, double[] sample2, double alpha)
    执行评估sample1sample2之间的配对差异均值是否为0的配对t检验,支持均值配对差异不等于0的双侧替代假设,显著性水平为alpha
    double
    t(double[] sample1, double[] sample2)
    计算不假设等子总体方差的2样本t统计量。
    double
    t(double mu, double[] observed)
    给定观察值和比较常数,计算t统计量
    protected double
    t(double m, double mu, double v, double n)
    计算1样本t检验的t统计量。
    protected double
    t(double m1, double m2, double v1, double v2, double n1, double n2)
    计算2样本t检验的t统计量。
    double
    t(double mu, StatisticalSummary sampleStats)
    计算用于比较由sampleStats描述的数据集的均值与mut统计量
    double
    t(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2)
    在不假设等子总体方差的情况下,比较由两个StatisticalSummary实例描述的数据集的均值的2样本t统计量。
    double
    tTest(double[] sample1, double[] sample2)
    返回与假设两个输入数组的均值相等的两样本、双尾t检验相关的观察到的显著性水平p值
    boolean
    tTest(double[] sample1, double[] sample2, double alpha)
    执行评估sample1sample2是否来自具有相同均值的总体的双侧t检验,显著性水平为alpha
    double
    tTest(double mu, double[] sample)
    返回与假设输入数组的均值与常数mu相等的1样本、双尾t检验相关的观察到的显著性水平p值
    boolean
    tTest(double mu, double[] sample, double alpha)
    执行评估从sample抽取的总体的均值是否等于mu的双侧t检验。
    protected double
    tTest(double m, double mu, double v, double n)
    计算2侧、1样本t检验的p值。
    protected double
    tTest(double m1, double m2, double v1, double v2, double n1, double n2)
    计算2侧、2样本t检验的p值。
    double
    tTest(double mu, StatisticalSummary sampleStats)
    返回与假设由sampleStats描述的数据集的均值与常数mu相等的1样本、双尾t检验相关的观察到的显著性水平p值
    boolean
    tTest(double mu, StatisticalSummary sampleStats, double alpha)
    执行评估由stats描述的数据集抽取的总体的均值是否等于mu的双侧t检验。
    double
    tTest(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2)
    返回与假设由两个StatisticalSummary实例描述的数据集的均值相等的两样本、双尾t检验相关的观察到的显著性水平p值
    boolean
    tTest(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2, double alpha)
    执行评估sampleStats1sampleStats2描述的数据集是否来自具有相同均值的总体的双侧t检验,显著性水平为alpha

    从类继承的方法 java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 构造器详细资料

    • TTest

      public TTest()
      空构造函数。

      这个构造函数并不是严格必需的,但它可以防止在JDK 18及更高版本中出现虚假的javadoc警告。

      从以下版本开始:
      3.0
  • 方法详细资料

    • pairedT

      public double pairedT(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException
      基于输入数组中的数据,计算配对的2样本t统计量。返回的t统计量等同于通过计算单样本t统计量t(double, double[]),其中mu = 0,样本数组由sample1sample2中对应条目的(有符号的)差异组成。

      * 前提条件:

      • 输入数组必须具有相同长度,它们的共同长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组为空
      MathIllegalArgumentException - 如果数组的长度不相等
      MathIllegalArgumentException - 如果数组的长度小于2
    • pairedTTest

      public double pairedTTest(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与输入数组中的数据相关的成对双样本双尾 t 检验的观察显著水平p值

      返回的数字是可以拒绝零假设的最小显著水平,即可以拒绝成对差异的均值为0的零假设,而支持成对差异的均值不等于0的双侧备择假设。对于单侧检验,将返回值除以2。

      此检验等同于使用tTest(double, double[])计算的单样本 t 检验,其中mu = 0,样本数组由sample1sample2的对应元素之间的有符号差异组成。

      使用注意:
      p值的有效性取决于参数 t 检验程序的假设,如此处所讨论的这里

      前提条件:

      • 输入数组的长度必须相同,它们的公共长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t检验的p值
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组为空
      MathIllegalArgumentException - 如果数组的长度不相等
      MathIllegalArgumentException - 如果数组的长度小于2
      MathIllegalStateException - 如果计算p值时发生错误
    • pairedTTest

      public boolean pairedTTest(double[] sample1, double[] sample2, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行成对 t 检验,评估成对差异的均值是否为0的零假设,而不是支持成对差异的均值不等于0的双侧备择假设,显著水平为alpha

      如果可以以置信度1 - alpha拒绝零假设,则返回true。要执行单侧检验,使用alpha * 2

      使用注意:
      测试的有效性取决于参数 t 检验程序的假设,如此处所讨论的这里

      前提条件:

      • 输入数组的长度必须相同,它们的公共长度必须至少为2。
      • 0 < alpha < 0.5
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      alpha - 测试的显著水平
      返回:
      如果可以以置信度1 - alpha拒绝零假设,则为true
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组为空
      MathIllegalArgumentException - 如果数组的长度不相等
      MathIllegalArgumentException - 如果数组的长度小于2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]内
      MathIllegalStateException - 如果计算p值时发生错误
    • t

      public double t(double mu, double[] observed) throws MathIllegalArgumentException, NullArgumentException
      计算给定观察值和比较常数的t统计量

      此统计量可用于执行均值的单样本 t 检验。

      前提条件:

      • 观察数组的长度必须至少为2。
      参数:
      mu - 比较常数
      observed - 值数组
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果observednull
      MathIllegalArgumentException - 如果observed的长度小于2
    • t

      public double t(double mu, StatisticalSummary sampleStats) throws MathIllegalArgumentException, NullArgumentException
      计算用于比较由sampleStats描述的数据集的均值与mut统计量

      此统计量可用于执行均值的单样本 t 检验。

      前提条件:

      • observed.getN() ≥ 2
      参数:
      mu - 比较常数
      sampleStats - 包含样本摘要统计信息的DescriptiveStatistics
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果sampleStatsnull
      MathIllegalArgumentException - 如果样本数量小于2
    • homoscedasticT

      public double homoscedasticT(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException
      计算具有相等子总体方差假设的2样本t统计量。要计算不带相等方差假设的t统计量,请使用t(double[], double[])

      此统计量可用于执行(同方差)两样本t检验以比较样本均值。

      t统计量为

         t = (m1 - m2) / (sqrt(1/n1 +1/n2) sqrt(var))

      其中n1是第一个样本的大小; n2是第二个样本的大小; m1是第一个样本的均值; m2是第二个样本的均值;var是汇总方差估计:

      var = sqrt(((n1 - 1)var1 + (n2 - 1)var2) / ((n1-1) + (n2-1)))

      其中var1是第一个样本的方差,var2是第二个样本的方差。

      前提条件:

      • 观察数组的长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组的长度小于2
    • t

      public double t(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException
      计算不带相等子总体方差假设的2样本t统计量。要计算假设相等方差的t统计量,请使用homoscedasticT(double[], double[])

      此统计量可用于执行两样本t检验以比较样本均值。

      t统计量为

         t = (m1 - m2) / sqrt(var1/n1 + var2/n2)

      其中n1是第一个样本的大小 n2是第二个样本的大小; m1是第一个样本的均值; m2是第二个样本的均值; var1是第一个样本的方差; var2是第二个样本的方差;

      前提条件:

      • 输入数组的长度必须相同,它们的公共长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组的长度小于2
    • t

      public double t(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2) throws MathIllegalArgumentException, NullArgumentException
      计算比较由两个StatisticalSummary实例描述的数据集均值的2样本t统计量,不假设相等子总体方差。使用homoscedasticT(StatisticalSummary, StatisticalSummary)在相等方差假设下计算t统计量。

      此统计量可用于执行两样本t检验以比较样本均值。

      返回的t统计量为

         t = (m1 - m2) / sqrt(var1/n1 + var2/n2)

      其中n1是第一个样本的大小; n2是第二个样本的大小; m1是第一个样本的均值; m2是第二个样本的均值; var1是第一个样本的方差; var2是第二个样本的方差

      前提条件:

      • 由两个Univariates描述的数据集必须至少包含2个观察值。
      参数:
      sampleStats1 - 描述第一个样本数据的StatisticalSummary
      sampleStats2 - 描述第二个样本数据的StatisticalSummary
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果样本统计数据为null
      MathIllegalArgumentException - 如果样本数量< 2
    • homoscedasticT

      public double homoscedasticT(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2) throws MathIllegalArgumentException, NullArgumentException
      计算2样本t统计量,比较由两个StatisticalSummary实例描述的数据集的均值,在等子群方差的假设下。要计算不考虑等方差假设的t统计量,请使用t(StatisticalSummary, StatisticalSummary)。

      此统计量可用于执行(同方差)两样本t检验,以比较样本均值。

      返回的t统计量为

         t = (m1 - m2) / (sqrt(1/n1 +1/n2) sqrt(var))

      其中n1是第一个样本的大小; n2是第二个样本的大小; m1是第一个样本的均值; m2是第二个样本的均值,var是汇总方差估计:

      var = sqrt(((n1 - 1)var1 + (n2 - 1)var2) / ((n1-1) + (n2-1)))

      其中var1是第一个样本的方差,var2是第二个样本的方差。

      前提条件

      • 由两个Univariates描述的数据集必须至少包含2个观测值。
      参数:
      sampleStats1 - 描述第一个样本数据的StatisticalSummary
      sampleStats2 - 描述第二个样本数据的StatisticalSummary
      返回:
      t统计量
      抛出:
      NullArgumentException - 如果样本统计数据为null
      MathIllegalArgumentException - 如果样本数量< 2
    • tTest

      public double tTest(double mu, double[] sample) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与一个样本双尾t检验相关的观察到的显著性水平p值,比较输入数组的均值与常数mu

      返回的数字是可以拒绝均值等于mu的零假设的最小显著性水平,支持均值与mu不同的双侧备择假设。对于单侧检验,将返回值除以2。

      使用说明:
      测试的有效性取决于参数t检验程序的假设,如此处讨论的。

      前提条件

      • 观察数组长度必须至少为2。
      参数:
      mu - 与样本均值进行比较的常数值
      sample - 样本数据值的数组
      返回:
      p值
      抛出:
      NullArgumentException - 如果样本数组为null
      MathIllegalArgumentException - 如果数组长度< 2
      MathIllegalStateException - 如果计算p值时出现错误
    • tTest

      public boolean tTest(double mu, double[] sample, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行评估从中抽取sample的总体均值等于mu的双侧t检验。

      返回true,如果可以以置信度1 - alpha拒绝零假设。要执行单侧检验,请使用alpha * 2

      * 示例:

      1. 要在95%水平上测试(双侧)假设样本均值 = mu ,使用
        tTest(mu, sample, 0.05)
      2. 要在99%水平上测试(单侧)假设 样本均值 < mu ,首先验证测得的样本均值小于mu,然后使用
        tTest(mu, sample, 0.02)

      使用说明:
      测试的有效性取决于单样本参数t检验程序的假设,如此处讨论的。

      前提条件

      • 观察数组长度必须至少为2。
      参数:
      mu - 与样本均值进行比较的常数值
      sample - 样本数据值的数组
      alpha - 测试的显著性水平
      返回:
      p值
      抛出:
      NullArgumentException - 如果样本数组为null
      MathIllegalArgumentException - 如果数组长度< 2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]
      MathIllegalStateException - 如果计算p值时出现错误
    • tTest

      public double tTest(double mu, StatisticalSummary sampleStats) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与一个样本双尾t检验相关的观察到的显著性水平p值,比较由sampleStats描述的数据集的均值与常数mu

      返回的数字是可以拒绝均值等于mu的零假设的最小显著性水平,支持均值与mu不同的双侧备择假设。对于单侧检验,将返回值除以2。

      使用说明:
      测试的有效性取决于参数t检验程序的假设,如此处讨论的。

      前提条件

      • 样本必须至少包含2个观测值。
      参数:
      mu - 与样本均值进行比较的常数值
      sampleStats - 描述样本数据的StatisticalSummary
      返回:
      p值
      抛出:
      NullArgumentException - 如果sampleStatsnull
      MathIllegalArgumentException - 如果样本数量< 2
      MathIllegalStateException - 如果计算p值时出现错误
    • tTest

      public boolean tTest(double mu, StatisticalSummary sampleStats, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行评估从stats描述的数据集抽取的总体均值等于mu的双侧t检验。

      返回true,如果可以以置信度1 - alpha拒绝零假设。要执行单侧检验,请使用alpha * 2.

      * 示例:

      1. 要在95%水平上测试(双侧)假设样本均值 = mu ,使用
        tTest(mu, sampleStats, 0.05)
      2. 要在99%水平上测试(单侧)假设 样本均值 < mu ,首先验证测得的样本均值小于mu,然后使用
        tTest(mu, sampleStats, 0.02)

      使用说明:
      测试的有效性取决于单样本参数t检验程序的假设,如此处讨论的。

      前提条件

      • 样本必须包含至少2个观测值。
      参数:
      mu - 与样本均值进行比较的常数值
      sampleStats - 描述样本数据值的StatisticalSummary
      alpha - 测试的显著性水平
      返回:
      p值
      抛出:
      NullArgumentException - 如果sampleStatsnull
      MathIllegalArgumentException - 如果样本数量< 2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]
      MathIllegalStateException - 如果计算p值时出现错误
    • tTest

      public double tTest(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与两个输入数组的均值进行双样本、双尾t检验相关联的观察显著水平p值

      返回的数字是可以拒绝两个均值相等的零假设的最小显著水平,而支持它们不同的双侧备择假设。对于单侧检验,将返回值除以2。

      该检验不假设基础总体方差相等,并且使用从样本数据计算的近似自由度来计算p值。所使用的t统计量如t(double[], double[])中定义的,并且使用了韦尔奇-萨特思韦特近似来计算自由度,如这里所述。要在假定相等子总体方差的情况下执行检验,请使用homoscedasticTTest(double[], double[])

      使用注意:
      p值的有效性取决于参数t检验过程的假设,如这里所讨论的。

      前提条件:

      • 观察到的数组长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t检验的p值
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组长度<2
      MathIllegalStateException - 如果计算p值时发生错误
    • homoscedasticTTest

      public double homoscedasticTTest(double[] sample1, double[] sample2) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与两个输入数组的均值进行双样本、双尾t检验相关联的观察显著水平p值,假设两个样本来自具有相等方差的子总体。要在没有相等方差假设的情况下执行检验,请使用tTest(double[], double[])

      返回的数字是可以拒绝两个均值相等的零假设的最小显著水平,而支持它们不同的双侧备择假设。对于单侧检验,将返回值除以2。

      homoscedasticT(double[], double[])。使用样本大小之和减2作为自由度。

      使用注意:
      p值的有效性取决于参数t检验过程的假设,如这里所讨论的。

      前提条件:

      • 观察到的数组长度必须至少为2。
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      返回:
      t检验的p值
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组长度<2
      MathIllegalStateException - 如果计算p值时发生错误
    • tTest

      public boolean tTest(double[] sample1, double[] sample2, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行双侧t检验,评估sample1sample2来自具有相同均值的总体的零假设,显著水平为alpha。此检验不假设子总体方差相等。要假设方差相等进行测试,请使用homoscedasticTTest(double[], double[], double)

      如果可以以置信度1 - alpha拒绝均值相等的零假设,则返回true。要执行单侧检验,请使用alpha * 2

      查看用于计算t统计量的公式,请参见t(double[], double[])。使用韦尔奇-萨特思韦特近似来近似自由度。

      * 示例:

      1. 要在95%水平上测试(双侧)假设mean 1 = mean 2 ,请使用
        tTest(sample1, sample2, 0.05).
      2. 要在99%水平上测试(单侧)假设 mean 1 < mean 2 ,首先验证sample 1的测量均值是否小于sample 2的均值,然后使用
        tTest(sample1, sample2, 0.02)

      使用注意:
      测试的有效性取决于参数t检验过程的假设,如这里所讨论的。

      前提条件:

      • 观察到的数组长度必须至少为2。
      • 0 < alpha < 0.5
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      alpha - 测试的显著水平
      返回:
      如果可以以置信度1 - alpha拒绝零假设,则为true
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组长度<2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]
      MathIllegalStateException - 如果计算p值时发生错误
    • homoscedasticTTest

      public boolean homoscedasticTTest(double[] sample1, double[] sample2, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行双侧t检验,评估sample1sample2来自具有相同均值的总体的零假设,显著水平为alpha,假设子总体方差相等。使用tTest(double[], double[], double)来在没有等方差假设的情况下执行测试。

      如果可以以置信度1 - alpha拒绝均值相等的零假设,则返回true。要执行单侧检验,请使用alpha * 2.要在没有等子总体方差假设的情况下执行测试,请使用tTest(double[], double[], double)

      t(double[], double[])中的公式。使用样本大小之和减2作为自由度。

      示例:

      1. 要在95%水平上测试(双侧)假设mean 1 = mean 2 ,请使用
        tTest(sample1, sample2, 0.05).
      2. 要在99%水平上测试(单侧)假设 mean 1 < mean 2, ,首先验证sample 1的测量均值是否小于sample 2的均值,然后使用
        tTest(sample1, sample2, 0.02)

      使用注意:
      测试的有效性取决于参数t检验过程的假设,如这里所讨论的。

      前提条件:

      • 观察到的数组长度必须至少为2。
      • 0 < alpha < 0.5
      参数:
      sample1 - 样本数据值数组
      sample2 - 样本数据值数组
      alpha - 测试的显著水平
      返回:
      如果可以以置信度1 - alpha拒绝零假设,则为true
      抛出:
      NullArgumentException - 如果数组为null
      MathIllegalArgumentException - 如果数组长度<2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]
      MathIllegalStateException - 如果计算p值时发生错误
    • tTest

      返回与由两个StatisticalSummary实例描述的数据集的均值进行双样本、双尾t检验相关联的观察显著水平p值

      返回的数字是可以拒绝两个均值相等的零假设的最小显著水平,而支持它们不同的双侧备择假设。对于单侧检验,将返回值除以2。

      该检验不假设基础总体方差相等,并且使用从样本数据计算的近似自由度来计算p值。要执行假设方差相等的测试,请使用homoscedasticTTest(StatisticalSummary, StatisticalSummary)

      使用注意:
      p值的有效性取决于参数t检验过程的假设,如这里所讨论的。

      前提条件:

      • 由两个Univariates描述的数据集必须至少包含2个观测值。
      参数:
      sampleStats1 - 描述第一个样本数据的StatisticalSummary
      sampleStats2 - 描述第二个样本数据的StatisticalSummary
      返回:
      t检验的p值
      抛出:
      NullArgumentException - 如果样本统计数据为null
      MathIllegalArgumentException - 如果样本数量< 2
      MathIllegalStateException - 如果计算p值时发生错误
    • homoscedasticTTest

      public double homoscedasticTTest(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与两个StatisticalSummary实例描述的数据集的均值进行两样本、双尾t检验相关的观察到的显著水平p值,在等子群方差假设下。要执行不考虑等方差假设的测试,请使用tTest(StatisticalSummary, StatisticalSummary)

      返回的数字是可以拒绝两个均值相等的零假设的最小显著水平,支持它们不同的双侧备择假设。对于单侧检验,将返回值除以2。

      查看homoscedasticT(double[], double[])以查看用于计算t统计量的公式。样本大小之和减2用作自由度。

      使用注意:
      p值的有效性取决于参数t检验程序的假设,如此处讨论的这里

      前提条件:

      • 由两个Univariates描述的数据集必须至少包含2个观测值。
      参数:
      sampleStats1 - 描述第一个样本数据的StatisticalSummary
      sampleStats2 - 描述第二个样本数据的StatisticalSummary
      返回:
      t检验的p值
      抛出:
      NullArgumentException - 如果样本统计数据为null
      MathIllegalArgumentException - 如果样本数量< 2
      MathIllegalStateException - 如果计算p值时发生错误
    • tTest

      public boolean tTest(StatisticalSummary sampleStats1, StatisticalSummary sampleStats2, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      执行双侧t检验,评估sampleStats1sampleStats2描述的数据集是否来自具有相同均值的总体的零假设,显著水平为alpha。此测试不假设子群方差相等。要在等方差假设下执行测试,请使用homoscedasticTTest(StatisticalSummary, StatisticalSummary)

      如果可以以置信度1 - alpha拒绝均值相等的零假设,则返回true。要执行单侧检验,请使用alpha * 2

      查看t(double[], double[])以查看用于计算t统计量的公式。自由度使用Welch-Satterthwaite近似进行估计。

      * 示例:

      1. 要在95%的置信水平下测试(双侧)假设mean 1 = mean 2 ,使用
        tTest(sampleStats1, sampleStats2, 0.05)
      2. 要在99%水平下测试(单侧)假设 mean 1 < mean 2 ,首先验证sample 1的测量均值是否小于sample 2的均值,然后使用
        tTest(sampleStats1, sampleStats2, 0.02)

      使用注意:
      测试的有效性取决于参数t检验程序的假设,如此处讨论的这里

      前提条件:

      • 由两个Univariates描述的数据集必须至少包含2个观测值。
      • 0 < alpha < 0.5
      参数:
      sampleStats1 - 描述样本数据值的StatisticalSummary
      sampleStats2 - 描述样本数据值的StatisticalSummary
      alpha - 测试的显著水平
      返回:
      如果可以以置信度1 - alpha拒绝零假设,则为true
      抛出:
      NullArgumentException - 如果样本统计数据为null
      MathIllegalArgumentException - 如果样本数量< 2
      MathIllegalArgumentException - 如果alpha不在范围(0, 0.5]
      MathIllegalStateException - 如果计算p值时发生错误
    • df

      protected double df(double v1, double v2, double n1, double n2)
      计算两样本t检验的近似自由度。
      参数:
      v1 - 第一个样本方差
      v2 - 第二个样本方差
      n1 - 第一个样本n
      n2 - 第二个样本n
      返回:
      近似自由度
    • t

      protected double t(double m, double mu, double v, double n)
      计算1样本t检验的t统计量。
      参数:
      m - 样本均值
      mu - 要测试的常数
      v - 样本方差
      n - 样本n
      返回:
      t检验统计量
    • t

      protected double t(double m1, double m2, double v1, double v2, double n1, double n2)
      计算2样本t检验的t统计量。

      不假设子群方差相等。

      参数:
      m1 - 第一个样本均值
      m2 - 第二个样本均值
      v1 - 第一个样本方差
      v2 - 第二个样本方差
      n1 - 第一个样本n
      n2 - 第二个样本n
      返回:
      t检验统计量
    • homoscedasticT

      protected double homoscedasticT(double m1, double m2, double v1, double v2, double n1, double n2)
      在等子群方差假设下计算2样本t检验的t统计量。
      参数:
      m1 - 第一个样本均值
      m2 - 第二个样本均值
      v1 - 第一个样本方差
      v2 - 第二个样本方差
      n1 - 第一个样本n
      n2 - 第二个样本n
      返回:
      t检验统计量
    • tTest

      protected double tTest(double m, double mu, double v, double n) throws MathIllegalArgumentException, MathIllegalStateException
      计算2侧、1样本t检验的p值。
      参数:
      m - 样本均值
      mu - 要测试的常数
      v - 样本方差
      n - 样本n
      返回:
      p值
      抛出:
      MathIllegalStateException - 如果计算p值时发生错误
      MathIllegalArgumentException - 如果n不大于1
    • tTest

      protected double tTest(double m1, double m2, double v1, double v2, double n1, double n2) throws MathIllegalArgumentException, MathIllegalStateException
      计算2侧、2样本t检验的p值。

      不假设子群方差相等。自由度从数据中估计。

      参数:
      m1 - 第一个样本均值
      m2 - 第二个样本均值
      v1 - 第一个样本方差
      v2 - 第二个样本方差
      n1 - 第一个样本n
      n2 - 第二个样本n
      返回:
      p值
      抛出:
      MathIllegalStateException - 如果计算p值时发生错误
      MathIllegalArgumentException - 如果估计的自由度不是严格正数
    • homoscedasticTTest

      protected double homoscedasticTTest(double m1, double m2, double v1, double v2, double n1, double n2) throws MathIllegalArgumentException, MathIllegalStateException
      在等子群方差假设下,计算2侧、2样本t检验的p值。

      样本大小之和减2用作自由度。

      参数:
      m1 - 第一个样本均值
      m2 - 第二个样本均值
      v1 - 第一个样本方差
      v2 - 第二个样本方差
      n1 - 第一个样本n
      n2 - 第二个样本n
      返回:
      p值
      抛出:
      MathIllegalStateException - 如果计算p值时发生错误
      MathIllegalArgumentException - 如果估计的自由度不是严格正数