psum.chisq
位于 mgcv
包(package)。 说明
评估 cdf。通过 Davies (1973, 1980) 的方法计算卡方随机变量的加权和。这就是它计算的
其中 df[j]
(整数)自由度和非中心参数 nc[j]
,而 是标准正态偏差。 是卡方随机变量,具有
用法
psum.chisq(q,lb,df=rep(1,length(lb)),nc=rep(0,length(lb)),sigz=0,
lower.tail=FALSE,tol=2e-5,nlim=100000,trace=FALSE)
参数
q |
是要评估的分位数值的向量。 |
lb |
包含 |
df |
是卡方自由度的整数向量。 |
nc |
是卡方偏差的非中心参数向量。 |
sigz |
是标准正态偏差的乘数。非积极排除该术语。 |
lower.tail |
指示是否需要上尾概率的下限。 |
tol |
是要达到的数值公差。 |
nlim |
是允许的最大积分步骤数 |
trace |
可以设置为 |
细节
这调用了 Davies (1980) 的原始 Algol60 代码的 C 翻译,它以数字方式反转分布的特征函数(参见 Davies,1973)。已进行一些修改以删除 goto
语句和全局变量,使用稍微更有效的 lb
排序以及对 log(1+x)
使用 R 函数。此外,积分和相关误差以单项累积,而不是每一项都分成 2 项,因为只使用它们的和。如果 q
是向量,则 psum.chisq
分别为每个 q[i]
调用算法。
如果 Davies 算法返回错误,则将尝试使用 Liu 等人 (2009) 的近似值,并发出警告。如果不可能,则返回NA
。如果算法检测到舍入误差可能很大,也会发出警告。
如果trace
设置为TRUE
,则结果将具有两个属性。 "ifault"
为 0 表示没有问题,1 表示无法获得所需的精度,2 表示舍入误差可能很大,3 表示提供了无效参数,或 4 表示无法找到积分参数。 "trace"
是一个7元素向量: 1. 绝对值和; 2.积分项总数; 3. 集成次数; 4、主积分中的积分区间; 5. 初始积分截断点; 6. 收敛因子项的标准差; 7. 定位积分参数的周期数。更多细节参见戴维斯(1980)。请注意,对于向量 q
,这些属性与 q
的最终元素相关。
例子
require(mgcv)
lb <- c(4.1,1.2,1e-3,-1) ## weights
df <- c(2,1,1,1) ## degrees of freedom
nc <- c(1,1.5,4,1) ## non-centrality parameter
q <- c(1,6,20) ## quantiles to evaluate
psum.chisq(q,lb,df,nc)
## same by simulation...
psc.sim <- function(q,lb,df=lb*0+1,nc=df*0,ns=10000) {
r <- length(lb);p <- q
X <- rowSums(rep(lb,each=ns) *
matrix(rchisq(r*ns,rep(df,each=ns),rep(nc,each=ns)),ns,r))
apply(matrix(q),1,function(q) mean(X>q))
} ## psc.sim
psum.chisq(q,lb,df,nc)
psc.sim(q,lb,df,nc,100000)
作者
Simon N. Wood simon.wood@r-project.org
参考
Davies, R. B. (1973). Numerical inversion of a characteristic function. Biometrika, 60(2), 415-417.
Davies, R. B. (1980) Algorithm AS 155: The Distribution of a Linear Combination of Chi-squared Random Variables. J. R. Statist. Soc. C 29, 323-333
Liu, H.; Tang, Y. & Zhang, H. H (2009) A new chi-square approximation to the distribution of non-negative definite quadratic forms in non-central normal variables. Computational Statistics & Data Analysis 53,853-856
相关用法
- R pdTens 实现张量积平滑的 pdMat 类的函数
- R plot.gam 默认 GAM 绘图
- R pcls 惩罚约束最小二乘拟合
- R place.knots 通过协变量值自动均匀放置一组结
- R predict.bam 根据拟合的大加法模型进行预测
- R pdIdnot 单位矩阵倍数的溢出证明 pdMat 类
- R polys.plot 绘制定义为多边形的地理区域
- R print.gam 打印广义加法模型对象。
- R predict.gam 根据拟合的 GAM 模型进行预测
- R pen.edf 提取与游戏拟合中每个惩罚相关的有效自由度
- R vcov.gam 从 GAM 拟合中提取参数(估计器)协方差矩阵
- R gam.check 拟合 gam 模型的一些诊断
- R null.space.dimension TPRS 未惩罚函数空间的基础
- R gam.reparam 寻找平方根惩罚的稳定正交重新参数化。
- R extract.lme.cov 从 lme 对象中提取数据协方差矩阵
- R scat 用于重尾数据的 GAM 缩放 t 系列
- R choldrop 删除并排名第一 Cholesky 因子更新
- R smooth.construct.cr.smooth.spec GAM 中的惩罚三次回归样条
- R bandchol 带对角矩阵的 Choleski 分解
- R gam.side GAM 的可识别性边条件
- R cox.ph 附加 Cox 比例风险模型
- R mgcv.parallel mgcv 中的并行计算。
- R gamm 广义加性混合模型
- R Predict.matrix GAM 中平滑项的预测方法
- R Predict.matrix.soap.film 皂膜光滑度预测矩阵
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Evaluate the c.d.f. of a weighted sum of chi-squared deviates。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。