【摘要】MSA 量具线性和偏倚研究中 P值计算需要用到学生t分布的双尾反函数。 在Excel中,用函数 T.INV.2T 。
代码如下:
create function [dbo].[Fun_SPC_TDIST2T](@t float,@df float) returns float begin declare @n float declare @a float declare @b float declare @y float set @n = @df set @t = @t * @t; set @y = @t / @n; set @b = @y + 1.0; if (@y > 1.0E-6) set @y = Log(@b); set @a =@n - 0.5; set @b = 48.0 * @a * @a; set @y = @a * @y; set @y = (((((-0.4 * @y - 3.3) * @y - 24.0) * @y - 85.5) / (0.8 * @y * @y + 100.0 + @b) + @y + 3.0) / @b + 1.0) * Sqrt(@y) return 2.0 * dbo.Fun_SPC_Gauss(-@y); end create function [dbo].[Fun_SPC_Gauss](@z float) returns float begin declare @y float declare @p float declare @w float if (@z = 0.0) set @p = 0.0; else begin set @y = Abs(@z) / 2; if (@y >= 3.0) begin set @p = 1.0; end else if (@y < 1.0) begin set @w = @y * @y; set @p = ((((((((0.000124818987 * @w - 0.001075204047) * @w + 0.005198775019) * @w - 0.019198292004) * @w + 0.059054035642) * @w - 0.151968751364) * @w + 0.319152932694) * @w - 0.531923007300) * @w + 0.797884560593) * @y * 2.0; end else begin set @y = @y - 2.0; set @p = (((((((((((((-0.000045255659 * @y + 0.000152529290) * @y - 0.000019538132) * @y - 0.000676904986) * @y + 0.001390604284) * @y - 0.000794620820) * @y - 0.002034254874) * @y + 0.006549791214) * @y - 0.010557625006) * @y + 0.011630447319) * @y - 0.009279453341) * @y + 0.005353579108) * @y - 0.002141268741) * @y + 0.000535310849) * @y + 0.999936657524; end end if (@z > 0.0) return (@p + 1.0) / 2; else return (1.0 - @p) / 2; return 0 end GO
参数为:Probability 必需, 与学生的 t 分布相关的概率;Deg_freedom 必需, 代表分布的自由度数。