[R] nonpos. def. var-cov matrix
Paul, David A
paulda at BATTELLE.ORG
Tue Apr 1 00:52:02 CEST 2003
Well, using the Splus language reference menu I was able to find the
way to extract the approximate covariance matrix of the parameters
in the "weights" statement for a *DIFFERENT* model:
varStruct.const.Group2 219.669352 -461.166077
varStruct.const.Group1 -461.166077 9774.570475
lSigma -1.897366 3.975608
varStruct.const.Group2 varStruct.const.Group1 lSigma
-2.577615 -14.816961 1.545618"
The 3 x 3 matrix in the first part represents the var-cov matrix of
the constant term for Group2, Group1, and the estimated variance parameter.
This particular matrix is associated with a weights statement that looks
"...,weights = varConstPower(form = ~ fitted(.)|Strata.Factor,
fixed = list(power = c(Group1 = 0.5, Group2 = 0.5)), const = 1),..."
I have no idea what the attr(,"Pars") part is telling me. Trying
on the model I am *actually* interested in yields the not very helpful
 "Non-positive definite approximate variance-covariance"
so I guess I'm out of luck. Suggestions for how to modify my code to
get an estimated covariance matrix and/or do some diagnostics would be
welcome. The confidence intervals for the model parameters are what I'm
As an aside, I often use the Splus language reference to search for the
tools to use in R.... I'm sure that's bad since I'm wasting my computer
by having Splus open just so I can look in the language reference
once in a while. On the other hand, the Splus language reference is a lot
easier to use and it avoids those "...you could try `help.search(" <blah>
messages. Suggestions in this area would also be greatly appreciated.
From: Paul, David A
Sent: Monday, March 31, 2003 5:07 PM
To: 'r-help at stat.math.ethz.ch'
Subject: [R] nonpos. def. var-cov matrix
R 1.6.2 for Windows, Win2k:
I have fitted a weighted least squares model using the code
"wls.out <- gls(y ~ x1 + x2 + x3 + x4 + x5 + x6 - 1, data = foo.frame,
weights = varConstPower(form = ~ fitted(.), fixed = list(power = 0.5),
const = 1))"
The data has 62 rows and the response is zero when the covariates are zero.
The purpose of the model was to account for the the fact that the variances
appear to increase linearly with the fitted values in diagnostic plots.
When I use
R1.6.2 yields the message
"Error in intervals.gls(wls7.strat1) : Cannot get confidence
intervals on var-cov components: Non-positive definite approximate
Would I be correct in assuming that this means the form of the
weighting function is incorrect? How might I examine the estimated
variance-covariance matrix? Any suggestions would be greatly
R-help at stat.math.ethz.ch mailing list
More information about the R-help