summary of 2part model

41 views
Skip to first unread message

Ellen R

unread,
Jul 15, 2023, 4:03:29 PM7/15/23
to R/qtl discussion
Hi, 

I used a 2part model so my scanone object has 3 LOD scores (lod.p.mu, lod.p, and lod.mu). I read that I could specify multiple thresholds, equal to the number of LOD columns. When I specify 3 thresholds:
summary(mod, threshold = c(3,3,3))

The results are not as expected (i.e. I get results that are below threshold for all LOD columns) and I get this error:
Warning message:
In object[wh, lodcolumn] > threshold :
  longer object length is not a multiple of shorter object length

But when I specify 4 thresholds:
summary(mod, threshold = c(3,3,3,3))

It works... is this a bug or am I using this wrong? 

Also, is it possible to specify autosome and X-chromosome-specific thresholds for multiple LOD columns? I was able to specify X-chromosome-specific thresholds for 1 LOD column by specifying c(rep(autosome_threshold, 19), x_threshold) but haven't been able to get it to work with multiple LOD columns. 

Thanks,
Ellen 

Karl Broman

unread,
Jul 15, 2023, 4:31:29 PM7/15/23
to R/qtl discussion
If you're using the default format="onepheno", threshold should have length 1. summary.scanone considers the multiple LOD score columns and allows a vector-valued threshold only for the other formats. The warning and errors you're getting are a bug from expecting a single value and not handling the multi-valued threshold properly.

X-chr-specific threshold are handled in summary.scanone only when perms are specified and those include autosome- and X-chr specific. I think actually what you did with the 20-valued threshold is actually working correctly, but it wasn't intended to work that way and when I fix this bug, it won't work that way anymore.

karl

Ellen R

unread,
Jul 16, 2023, 5:17:35 PM7/16/23
to R/qtl discussion
Thanks. Another question, does summary.scanone use the generalized extreme value distribution to calculate significance thresholds from the permutations?

Thanks,
Ellen

Karl Broman

unread,
Jul 16, 2023, 5:58:48 PM7/16/23
to R/qtl discussion
No it just uses quantile()

karl
Reply all
Reply to author
Forward
0 new messages