类 WilcoxonSignedRankTest

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

public class WilcoxonSignedRankTest extends Object
Wilcoxon符号秩检验的实现。此实现目前仅处理成对(长度相等)样本,并且从分析中丢弃并列对。后者的行为与R中的wilcox.test实现不同,并对应于scipy.stats.wilcoxon中可配置的“wilcox” zero_method。
  • 构造器详细资料

    • WilcoxonSignedRankTest

      public WilcoxonSignedRankTest()
      创建一个测试实例,其中NaN保留在原位,而并列对获得适用秩的平均值。
    • WilcoxonSignedRankTest

      public WilcoxonSignedRankTest(NaNStrategy nanStrategy, TiesStrategy tiesStrategy)
      使用给定的NaN和并列对策略创建一个测试实例。
      参数:
      nanStrategy - 指定应用于Double.NaN的策略
      tiesStrategy - 指定应用于并列对的策略
  • 方法详细资料

    • wilcoxonSignedRank

      public double wilcoxonSignedRank(double[] x, double[] y) throws MathIllegalArgumentException, NullArgumentException
      计算比较两个相关样本的均值或单个样本上的重复测量的Wilcoxon符号秩统计量

      此统计量可用于执行Wilcoxon符号秩检验,评估两个相关样本或单个样本上的重复测量的零假设,即两个相关样本或单个样本的均值相等。

      设Xi表示第一个样本的第i个个体,Yi表示第二个样本中与之相关的第i个个体。设Zi = Yi - Xi

      * 前提条件:

      • 差异Zi必须是独立的。
      • 每个Zi来自一个连续的总体(它们必须相同),并且关于一个公共中位数对称。
      • Xi和Yi代表的值是有序的,因此大于、小于和等于的比较是有意义的。
      参数:
      x - 第一个样本
      y - 第二个样本
      返回:
      Wilcoxon符号秩统计量(W+和W-中较大的值)
      抛出:
      NullArgumentException - 如果xynull
      MathIllegalArgumentException - 如果xy的长度为零。
      MathIllegalArgumentException - 如果xy的长度不相同。
    • wilcoxonSignedRankTest

      public double wilcoxonSignedRankTest(double[] x, double[] y, boolean exactPValue) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
      返回与比较两个相关样本的均值或单个样本上的重复测量的Wilcoxon符号秩统计量相关联的观察显著水平p值

      设Xi表示第一个样本的第i个个体,Yi表示第二个样本中与之相关的第i个个体。设Zi = Yi - Xi

      前提条件:

      • 差异Zi必须是独立的。
      • 每个Zi来自一个连续的总体(它们必须相同),并且关于一个公共中位数对称。
      • Xi和Yi代表的值是有序的,因此大于、小于和等于的比较是有意义的。

      实现说明:

      • 从数据中丢弃并列对。
      • exactPValue为false时,使用正态近似来估计p值,包括连续性校正因子。wilcoxonSignedRankTest(x, y, true)应该与R中的 wilcox.test(x, y, alternative = "two.sided", mu = 0, paired = TRUE, exact = FALSE, correct = TRUE)给出相同的结果(只要数据中没有并列对)。
      参数:
      x - 第一个样本
      y - 第二个样本
      exactPValue - 是否需要精确p值(仅适用于x.length <= 30,如果为true且x.length > 30,则抛出MathIllegalArgumentException)
      返回:
      p值
      抛出:
      NullArgumentException - 如果xynull
      MathIllegalArgumentException - 如果xy的长度为零,或者对于所有i,x[i] == y[i]
      MathIllegalArgumentException - 如果xy的长度不相同。
      MathIllegalArgumentException - 如果exactPValuetruex.length > 30
      MathIllegalStateException - 如果由于收敛错误而无法计算p值
      MathIllegalStateException - 如果超过最大迭代次数