当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R mvn 多元正态加性模型


R语言 mvn 位于 mgcv 包(package)。

说明

系列与 gam 一起使用,实现平滑多元高斯回归。每个维度的均值由单独的线性预测器给出,该预测器可能包含平滑分量。还可以指定额外的线性预测器,给出组件之间共享的项(请参阅formula.gam)。作为拟合的一部分,估计响应精度矩阵的 Choleski 因子。

用法

mvn(d=2)

参数

d

响应的维度 (>1)。

细节

响应是 d 维多元正态,其中估计协方差矩阵,并且每个维度的均值都有单独的线性预测变量。模型指定是通过一系列类似游戏的公式来实现的——每个维度一个。参见示例。

目前,该系列忽略任何先验权重,并使用足以用于平滑参数的 BFGS 估计的一阶导数信息来实现。 "response" 残差给出原始残差,而 "deviance" 残差被标准化为近似独立标准正态(如果一切顺利)。

general.family 的对象。

例子

library(mgcv)
## simulate some data...
V <- matrix(c(2,1,1,2),2,2)
f0 <- function(x) 2 * sin(pi * x)
f1 <- function(x) exp(2 * x)
f2 <- function(x) 0.2 * x^11 * (10 * (1 - x))^6 + 10 * 
            (10 * x)^3 * (1 - x)^10
n <- 300
x0 <- runif(n);x1 <- runif(n);
x2 <- runif(n);x3 <- runif(n)
y <- matrix(0,n,2)
for (i in 1:n) {
  mu <- c(f0(x0[i])+f1(x1[i]),f2(x2[i]))
  y[i,] <- rmvn(1,mu,V)
}
dat <- data.frame(y0=y[,1],y1=y[,2],x0=x0,x1=x1,x2=x2,x3=x3)

## fit model...

b <- gam(list(y0~s(x0)+s(x1),y1~s(x2)+s(x3)),family=mvn(d=2),data=dat)
b
summary(b)
plot(b,pages=1)
solve(crossprod(b$family$data$R)) ## estimated cov matrix

作者

Simon N. Wood simon.wood@r-project.org

参考

Wood, S.N., N. Pya and B. Saefken (2016), Smoothing parameter and model selection for general smooth models. Journal of the American Statistical Association 111, 1548-1575 doi:10.1080/01621459.2016.1180986

也可以看看

gaussian

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Multivariate normal additive models。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。