📜  如何计算假设检验的功效 - TypeScript (1)

📅  最后修改于: 2023-12-03 14:53:17.242000             🧑  作者: Mango

如何计算假设检验的功效 - TypeScript

假设检验是一种常用的统计方法,用于判断某个样本是否来自于某个已知的分布。如果拒绝了原假设,则可以认为样本不来自该分布,反之则认为样本来自该分布。假设检验的功效是指,在样本来自指定分布的情况下,能够正确拒绝原假设的概率。

计算公式

假设检验的功效通常使用样本大小、显著性水平、效应大小三个参数来计算。其中,样本大小和显著性水平影响功效的大小,效应大小影响原假设是否被拒绝的概率。

计算假设检验的功效需要使用统计软件,在 TypeScript 中可以使用 statistics 库。下面是使用该库计算假设检验功效的 TypeScript 代码片段:

import { normal } from 'statistics';

function powerEffectSample(
  mu0: number,
  mu1: number,
  sigma: number,
  n: number,
  alpha: number
): number {
  const zcrit = normal.inv(1 - alpha / 2);
  const zbeta = (zcrit - (mu1 - mu0) * Math.sqrt(n) / sigma) / Math.sqrt(1 + n);
  return normal.cdf(zbeta);
}

该代码片段中,mu0mu1 分别是原假设和备择假设的均值,sigma 是指定的标准差,n 是样本大小,alpha 是显著性水平。函数返回假设检验的功效。在 TypeScript 中,我们使用 statistics 中的 normal 分布函数计算正态分布的值和概率密度函数。

示例

为了说明假设检验的功效计算方法,下面我们使用 powerEffectSample() 函数来计算样本大小 n=30,显著性水平 alpha=0.05,原假设均值 mu0=10,备选假设均值 mu1=12,标准差 sigma=2 的假设检验的功效。下面是该计算过程的 TypeScript 代码片段:

const mu0 = 10;
const mu1 = 12;
const sigma = 2;
const n = 30;
const alpha = 0.05;

const power = powerEffectSample(mu0, mu1, sigma, n, alpha);

console.log(`假设检验的功效为 ${power.toFixed(2)}`);

该代码片段会输出以下结果:

假设检验的功效为 0.28

这表明,在样本大小为 30,显著性水平为 0.05,原假设均值为 10,标准差为 2 的情况下,假设检验的功效为 0.28。如果我们使用该假设检验来测试样本,那么可以在 28% 的情况下正确拒绝原假设。

总结

在 TypeScript 中计算假设检验的功效可以使用 statistics 库中的 normal 分布函数。通过传递原假设和备选假设的均值、标准差、样本大小和显著性水平等参数,可以计算假设检验的功效。