Dear list,

i'm trying to test if a linear combination of coefficients of glm is equal
to 0. For example :
class 'cl' has 3 levels (1,2,3) and 'y' is a response variable. We want to
test  H0: mu1 + mu2 - mu3 =0 where mu1,mu2, and mu3 are  the means for each
level.

for me, the question is how to get the covariance matrix of the estimated
parameters from glm. but perhaps there is a direct solution in one of the
packages.

i know how to solve this particular problem (i wrote it below) but i'm
curious about the covariance matrix of coefficient as it seems to be
important.

the R code example :
###
nObs <- 10
cl <- as.factor( sample(c(1,2,3),nObs,replace=TRUE) )
y <- rnorm(nObs)

model <- glm(y ~ cl)
b <- model$coefficients
H <- c(1,1,-1)  # we want to test H0: Hb = 0

### the following code will NOT run unless we can compute covModelCoeffs

#the mean of Hb is
mu = H %*% model$coefficients
#the variance is HB is
var = H %*% covModelCoeffs %*% t(H)

p.val <- 2 * pnorm( -abs(mu), mean=0, sd=sqrt(var),lower.tail = TRUE)


how do i get the covariance matrix of the estimated parameters ?

thanks,
peter

P.S. the simple solution for this particular problem:

## get the mean for each level
 muV <- by(y,cl,mean)
## get the variance for each level
 varV <- by(y,cl,var)

## the mean of Hb is
muHb <- H %*% muV
## because of independence, the variance of Hb is
varHb <- sum(varV)

## the probability of error, so-called p-value:
p.val <- 2 * pnorm( -abs(muHb), mean=0, sd=sqrt(varHb),lower.tail = TRUE)

thanks again,
peter


-- 
Peter Salzman, PhD
Department of Biostatistics and Computational Biology
University of Rochester

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to