121
test.SNPquoted <- function() {
125
# generate some random data in "prob" format
128
q <- runif(Nsnps,min=0.2,max=0.8)
129
PROB0 <- apply(matrix(q,ncol=1),MARGIN=1,FUN=function(x){
130
cBB <- rnorm(Nids,mean=x^2,sd=0.01)
131
cAB <- rnorm(Nids,mean=2*x*(1-x),sd=0.01)
133
cAA <- matrix(cAA,ncol=1)
134
return(c(cAA,cAB,cBB))
136
PROB <- matrix(NA,ncol=3*Nsnps,nrow=Nids)
139
PROB[,(i-1)*3+j] <- PROB0[c(((j-1)*Nids+1):(j*Nids)),i]
142
daProb <- matrix2databel(t(PROB),filename="temp_daProb")
144
# conversion functions
145
makedose <- function(prob) {
146
dose <- 2*prob[c(F,F,T)]+prob[c(F,T,F)]
148
miss <- which(abs(bp)<1e-16 & abs(dose)<1e-16)
149
if (length(miss) > 0 ) dose[miss] <- NA
152
pfun <- function(a) return(a)
154
dosefile <- apply2dfo(dfodata=daProb, anFUN = "makedose",
155
MAR = 2, procFUN = "pfun",prob=get("SNP"),
157
outfile="temp_myTestDose",
158
type="DOUBLE",transpose=FALSE)
161
DOSE <- matrix(NA,ncol=Nids,nrow=Nsnps)
162
for (i in 1:Nids) for (j in 1:Nsnps) {
163
DOSE[j,i] <- 2*PROB[i,j*3]+PROB[i,j*3-1]
166
checkEqualsNumeric(DOSE,as(dosefile,"matrix"))
169
unlink("temp_myTestDose.fv?")
172
unlink("temp_daProb.fv?")