如何在R的qt函数中使用ncp参数?
How to use the ncp parameter in R's qt function?
我正在使用 R 进行一些计算。这个问题是关于 R 的,也是关于统计的。
假设我有一个配对样本的数据集,其中包含一个受试者在注射安慰剂后的血小板浓度,然后在为多个受试者注射药物后再次检测。我想估计配对样本的平均差。我只是在学习 t 分布。如果我想使用 Z 检验获得均值差的 95% 置信区间,我可以简单地使用:
mydata$diff <- mydata$medication - mydata$placebo
mu0 <- mean(mydata$diff)
sdmu <- sd(mydata$diff) / sqrt(length(mydata$diff))
qnorm(c(0.025, 0.975), mu, sdmu)
在对 t.test
函数进行了多次混淆和交叉检查之后,我发现我可以通过以下方法获得 t 检验的 95% 置信区间:
qt(c(0.025, 0.975), df=19) * sdmu + mu0
我对此的理解如下:
Tstatistic = (mu - mu0)/sdmu
Tcdf^-1(0.025) <= (mu - mu0) / sdmu <= Tcdf^-1(0.975)
=>
sdmu * Tcdf^-1(0.025) + mu0 <= mu <= sdmu * Tcdf^-1(0.975) + mu0
之所以令人困惑,是因为如果我使用 Z 检验,我会这样写:
qnorm(c(0.025, 0.975), mu0, sdmu)
直到我试图弄清楚如何使用 t 分布,我才意识到我也可以将正态分布参数移出函数:
qnorm(c(0.025, 0.975), 0, 1) * sdmu + mu0
我想弄清楚这在数学上意味着什么,这意味着 Z 统计量 (mu - mu0)/sdmu 总是服从均值为 0 且标准差为 1 的正态分布?
让我感到难过的是,我想将 t 分布参数移动到函数的参数中,以减少考虑这种转换的巨大精神开销。
但是,根据我的 R 函数版本 qt
的文档,为了做到这一点,我需要计算 非中心参数 NCP。根据(我的版本)文档,ncp解释如下:
Let T= (mX - m0) / (S/sqrt(n)) where mX is the mean and S the sample standard deviation (sd) of X_1, X_2, …, X_n which are i.i.d. N(μ, σ^2) Then T is distributed as non-central t with df= n - 1 degrees of freedom and non-centrality parameter ncp = (μ - m0) * sqrt(n)/σ.
我完全无法理解这个问题。起初它似乎适合我的框架,因为 Tstatistic = (mu - m0) / sdmu
。但是μ不就是我想要的qt
函数(也就是Tcdf-1)到return吗?它如何出现在我需要作为输入的 ncp 中?那么 σ 呢? μ 和 σ 在这种情况下是什么意思?
基本上,我怎样才能得到与 qt(c(0.025, 0.975), df=19) * sdmu + mu0
相同的结果,而不需要函数调用之外的任何术语,我可以解释一下它是如何工作的吗?
让我尝试不使用任何公式来解释。
首先,学生 t 分布和正态分布是两种截然不同的概率分布,并且(在大多数情况下)不应该给你相同的结果。
t 分布是检验两个正态分布样本之间差异的适当概率分布。由于我们不知道人口 sd,因此我们必须坚持使用从样本中获得的人口。而且该分布不再是正态分布,而是 t 分布。
z 分布可用于近似检验。在这种情况下,我们使用 z 分布作为 t 分布的近似值。但是,建议不要在自由度较低的情况下这样做。原因:自由度越高的分布越接近正态分布。教科书上通常说t和df>30的正态分布足够相似,可以用正态分布来近似t。为此,您必须首先对数据进行归一化,使 mean = 0 和 sd = 1。然后您可以使用 z 分布进行近似。
我通常建议不要使用这个近似值。当计算必须用你的头、一支笔和一堆表格在纸上完成时,这是一个合理的拐杖。基本统计中存在许多变通方法,这些变通方法本应以较少的计算量为您提供合理的结果。使用通常已过时的现代计算机(至少在大多数情况下)。
顺便说一下,z 分布(按照惯例)被定义为正态分布 N(0, 1),即均值 = 0 且 sd = 1 的正态分布。
最后,关于指定这些分布的不同方式。正态分布实际上是我所知道的唯一可以通过直接设置 mean 和 sd 来指定的概率分布(有几十种分布,如果您有兴趣的话)。非中心参数与正态分布的均值具有相似的效果。在绘图中,它沿 x 轴移动 t 分布。但它也会改变其形状并使其倾斜,以便 mean 和 ncp 彼此远离。
这段代码将展示 ncp 如何改变 t 分布的形状和位置:
x <- seq(-5, 15, 0.1)
plot(x, dt(x, df = 10, ncp = 0), from = -4, to = +4, type = "l")
for(ncp in 1:6)
lines(x, dt(x, df = 10, ncp = ncp))
我正在使用 R 进行一些计算。这个问题是关于 R 的,也是关于统计的。
假设我有一个配对样本的数据集,其中包含一个受试者在注射安慰剂后的血小板浓度,然后在为多个受试者注射药物后再次检测。我想估计配对样本的平均差。我只是在学习 t 分布。如果我想使用 Z 检验获得均值差的 95% 置信区间,我可以简单地使用:
mydata$diff <- mydata$medication - mydata$placebo
mu0 <- mean(mydata$diff)
sdmu <- sd(mydata$diff) / sqrt(length(mydata$diff))
qnorm(c(0.025, 0.975), mu, sdmu)
在对 t.test
函数进行了多次混淆和交叉检查之后,我发现我可以通过以下方法获得 t 检验的 95% 置信区间:
qt(c(0.025, 0.975), df=19) * sdmu + mu0
我对此的理解如下:
Tstatistic = (mu - mu0)/sdmu
Tcdf^-1(0.025) <= (mu - mu0) / sdmu <= Tcdf^-1(0.975)
=>
sdmu * Tcdf^-1(0.025) + mu0 <= mu <= sdmu * Tcdf^-1(0.975) + mu0
之所以令人困惑,是因为如果我使用 Z 检验,我会这样写:
qnorm(c(0.025, 0.975), mu0, sdmu)
直到我试图弄清楚如何使用 t 分布,我才意识到我也可以将正态分布参数移出函数:
qnorm(c(0.025, 0.975), 0, 1) * sdmu + mu0
我想弄清楚这在数学上意味着什么,这意味着 Z 统计量 (mu - mu0)/sdmu 总是服从均值为 0 且标准差为 1 的正态分布?
让我感到难过的是,我想将 t 分布参数移动到函数的参数中,以减少考虑这种转换的巨大精神开销。
但是,根据我的 R 函数版本 qt
的文档,为了做到这一点,我需要计算 非中心参数 NCP。根据(我的版本)文档,ncp解释如下:
Let T= (mX - m0) / (S/sqrt(n)) where mX is the mean and S the sample standard deviation (sd) of X_1, X_2, …, X_n which are i.i.d. N(μ, σ^2) Then T is distributed as non-central t with df= n - 1 degrees of freedom and non-centrality parameter ncp = (μ - m0) * sqrt(n)/σ.
我完全无法理解这个问题。起初它似乎适合我的框架,因为 Tstatistic = (mu - m0) / sdmu
。但是μ不就是我想要的qt
函数(也就是Tcdf-1)到return吗?它如何出现在我需要作为输入的 ncp 中?那么 σ 呢? μ 和 σ 在这种情况下是什么意思?
基本上,我怎样才能得到与 qt(c(0.025, 0.975), df=19) * sdmu + mu0
相同的结果,而不需要函数调用之外的任何术语,我可以解释一下它是如何工作的吗?
让我尝试不使用任何公式来解释。
首先,学生 t 分布和正态分布是两种截然不同的概率分布,并且(在大多数情况下)不应该给你相同的结果。
t 分布是检验两个正态分布样本之间差异的适当概率分布。由于我们不知道人口 sd,因此我们必须坚持使用从样本中获得的人口。而且该分布不再是正态分布,而是 t 分布。
z 分布可用于近似检验。在这种情况下,我们使用 z 分布作为 t 分布的近似值。但是,建议不要在自由度较低的情况下这样做。原因:自由度越高的分布越接近正态分布。教科书上通常说t和df>30的正态分布足够相似,可以用正态分布来近似t。为此,您必须首先对数据进行归一化,使 mean = 0 和 sd = 1。然后您可以使用 z 分布进行近似。
我通常建议不要使用这个近似值。当计算必须用你的头、一支笔和一堆表格在纸上完成时,这是一个合理的拐杖。基本统计中存在许多变通方法,这些变通方法本应以较少的计算量为您提供合理的结果。使用通常已过时的现代计算机(至少在大多数情况下)。
顺便说一下,z 分布(按照惯例)被定义为正态分布 N(0, 1),即均值 = 0 且 sd = 1 的正态分布。
最后,关于指定这些分布的不同方式。正态分布实际上是我所知道的唯一可以通过直接设置 mean 和 sd 来指定的概率分布(有几十种分布,如果您有兴趣的话)。非中心参数与正态分布的均值具有相似的效果。在绘图中,它沿 x 轴移动 t 分布。但它也会改变其形状并使其倾斜,以便 mean 和 ncp 彼此远离。
这段代码将展示 ncp 如何改变 t 分布的形状和位置:
x <- seq(-5, 15, 0.1)
plot(x, dt(x, df = 10, ncp = 0), from = -4, to = +4, type = "l")
for(ncp in 1:6)
lines(x, dt(x, df = 10, ncp = ncp))