Hi Casey,

any chance that you could send me the data off list (under a strict undertaking to not use it for anything but this de-bugging of course)? I can't immediately reproduce the problem by simulating similar, but it certainly looks like a bug.

best,
Simon

On 02/02/2012 01:54 AM, Casey Olives wrote:
Hi Simon,

Thanks for your response. I am now running mgcv 1.7-13 on R-2.14. Having fixed 
this error, I now encounter the following when fitting this model

Error in qr.qty(qrx, yn) : 'qr' and 'y' must have the same number of rows
Calls: bam ->  bgam.fit ->  qr.update ->  qr.qty ->  qr.qty

bam(cbind(group0, temp)~1+ as.factor(AGEcat) + 
HSMF+BachMF+income.cpi+poverty+tobacco+tax+CigSalesPerCap+blacks+hisp+asian+native +s( 
year.centered , by= fips , bs='cr', k=8) +s( fips , bs='re'), gamma=1.6, 
family=binomial(link="logit"), data=data

My sense is that the error is coming from the term

s( year.centered , by= fips , bs='cr', k=8)

as if I run the same model with

s( year.centered, bs='cr', k=8)

I don't get the error. Thus, something about trying to fit these smooths by 
fips id is causing the error.

Do you have any ideas on what might be happening? I recognize it is hard to 
know without seeing the data....

Thanks again
Casey

-----Original Message-----
From: Simon Wood [mailto:s.w...@bath.ac.uk]
Sent: Tuesday, January 31, 2012 2:17 AM
To: Casey Olives
Cc: 'r-help@r-project.org'
Subject: Re: [R] mgcv bam() with grouped binomial data

upgrade to the current mgcv version (see last item in changeLog for mgcv
1.7-12)

On 01/30/2012 10:04 PM, Casey Olives wrote:
Hello,

I'm trying to use the bam() function in the R mgcv package for a large set of 
grouped binary data. However, I have found that this function does not take 
data in the format of cbind(numerator, denominator) on the left hand side of 
the formula. As an example, consider the following

dat1<- data.frame(id=rep(1:6, each=3), num=rbinom(18, size=10, prob=0.8), 
den=rbinom(18, size=5, prob=0.5), x=rnorm(18))
m1.1<- gam(cbind(num, den) ~ x+s(id, bs="re"), data=dat1, family=binomial)
m2.1<- bam(cbind(num, den) ~x+ s(id, bs="re"), data=dat1, family=binomial)

Running the above results in

dat1<- data.frame(id=rep(1:6, each=3), num=rbinom(18, size=10, prob=0.8), 
den=rbinom(18, size=5, prob=0.5), x=rnorm(18))
m1.1<- gam(cbind(num, den) ~ x+s(id, bs="re"), data=dat1, family=binomial)
m2.1<- bam(cbind(num, den) ~x+ s(id, bs="re"), data=dat1, family=binomial)
Error in dev.resids(y, mu, weights) :
    argument mu must be a numeric vector of length 1 or length 36

Is this a known issue? If so, is there a way to handle it?

Thank you,

Casey


        [[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.



______________________________________________
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