Nothing
#$Author: sinnwell $
#$Date: 2008/04/10 14:32:18 $
#$Header: /projects/genetics/cvs/cvsroot/haplo.stats/R/haplo.score.slide.q,v 1.9 2008/04/10 14:32:18 sinnwell Exp $
#$Locker: $
#$Log: haplo.score.slide.q,v $
#Revision 1.9 2008/04/10 14:32:18 sinnwell
#add eps.svd
#
#Revision 1.8 2007/03/08 14:38:51 sinnwell
#*** empty log message ***
#
#Revision 1.7 2007/01/25 20:31:42 sinnwell
#add haplo.effect and min.count, new features in haplo.score
#
#Revision 1.6 2006/10/25 15:09:15 sinnwell
#rm Matrix library call, only done in Ginv
#
#Revision 1.5 2006/01/27 16:26:08 sinnwell
#dependency of Ginv on Matrix
#
#Revision 1.4 2005/03/30 17:40:33 sinnwell
#shorten df column names
#
#Revision 1.3 2005/03/03 20:51:08 sinnwell
#change defaults for skip.haplo
#
#Revision 1.2 2003/12/08 19:43:53 sinnwell
# changed F,T to FALSE,TRUE
#
#Revision 1.1 2003/08/22 21:05:45 sinnwell
#Initial revision
#
# License:
#
# Copyright 2003 Mayo Foundation for Medical Education and Research.
#
# This program is free software; you can redistribute it and/or modify it under the terms of
# the GNU General Public License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
#
# You should have received a copy of the GNU General Public License along with this
# program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
# Boston, MA 02111-1307 USA
#
# For other licensing arrangements, please contact Daniel J. Schaid.
#
# Daniel J. Schaid, Ph.D.
# Division of Biostatistics
# Harwick Building Room 775
# Mayo Clinic
# 200 First St., SW
# Rochester, MN 55905
#
# phone: 507-284-0639
# fax: 507-284-9542
# email: schaid@mayo.edu
#
haplo.score.slide <- function(y, geno, trait.type="gaussian", n.slide=2,
offset = NA, x.adj = NA, min.count=5,
skip.haplo=min.count/(2*nrow(geno)),
locus.label=NA, miss.val=c(0,NA),
haplo.effect="additive", eps.svd=1e-5,
simulate=FALSE, sim.control=score.sim.control(),
em.control=haplo.em.control())
# Developed by Schaid, DJ; Sinnwell, JP 2003
# Mayo Clinic Rochester, Div of Biostatistics
{
# check that n.slide <= n.loci
n.loci <- ncol(geno)/2
if(n.slide == 1 | n.slide > n.loci) {
warning("n.slide out of range, using default of 2 instead")
n.slide <- 2
}
start.locus <- 1:(n.loci-(n.slide-1))
if(missing(locus.label)) locus.label <- 1:n.loci
n.site <- length(start.locus)
score.global.p <- rep(NA,n.site)
score.global.p.sim <- rep(NA,n.site)
score.max.p.sim <- rep(NA,n.site)
n.val.haplo <- rep(NA,n.site)
n.val.global <- rep(NA,n.site)
for (i in start.locus){
# subset geno and locus.label to analyze
col.start <- (i-1)*2 + 1
col.end <- (col.start - 1) + 2*n.slide
geno.slide <- geno[, (col.start:col.end)]
temp <- haplo.score(y=y, geno=geno.slide, trait.type=trait.type,
offset = offset, x.adj = x.adj, haplo.effect=haplo.effect,
min.count=min.count, skip.haplo=skip.haplo,
miss.val=miss.val, eps.svd=eps.svd, simulate=simulate, sim.control=sim.control,
em.control = em.control)
# keep global, global.sim and max.sim p-values
score.global.p[i] <- temp$score.global.p
score.global.p.sim[i] <- temp$score.global.p.sim
score.max.p.sim[i] <- temp$score.max.p.sim
# keep total simulations done
n.val.haplo[i] <- temp$n.val.haplo
n.val.global[i] <- temp$n.val.global
}
score.slide <- list(df=data.frame(start.loc=start.locus, score.global.p,
global.p.sim=score.global.p.sim, max.p.sim=score.max.p.sim),
n.loci=n.loci, haplo.effect=haplo.effect,
simulate=simulate, n.slide=n.slide, locus.label=locus.label,
n.val.haplo=n.val.haplo, n.val.global=n.val.global)
if(exists("is.R") && is.function(is.R) && is.R()) {
class(score.slide) <- "haplo.score.slide"
} else {
oldClass(score.slide) <- "haplo.score.slide"
}
return(score.slide)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.