1 2 3 4 5 6
| # compact_data = readRDS("/storage11_7T/fuy/TADA-A/annotation/spliceai/2021-03-15_spliceai_DS_AG_6788SNV_sf_uni_prior_compact.rds") compact_data = readRDS("/storage11_7T/fuy/TADA-A/cell_WES/DNM/2021-01-19cp6_all_gene_PO_6788SNV_sf_uni_prior_compact.rds") data=compact_data$base_info
gene_prior_file = "/storage11_7T/fuy/TADA-A/db/MS_data/prior/new_uniform_gene_prior.txt" optimization_iteration = 2000
|
1 2 3 4
| library(Rcpp) sourceCpp(file="/storage11_7T/fuy/TADA-A/cell_WES/DNM/ll_sum.cpp") sourceCpp(file="/storage11_7T/fuy/TADA-A/cell_WES/DNM/multi_annota.cpp") sourceCpp(file="/storage11_7T/fuy/TADA-A/cell_WES/DNM/post.cpp")
|
1 2 3 4
| library(data.table) gene_prior = fread("/storage11_7T/fuy/TADA-A/db/MS_data/prior/new_uniform_gene_prior.txt") gene_prior = gene_prior[order(gene_prior$genename),] selected_annotations = c(1)
|
1 2 3 4 5
| a = c(0.1,.05) tmm = proc.time() gama = optim(a, fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par gama proc.time() - tmm
|
- 0.255723407377646
- 0.999829134189715
user system elapsed
338.867 0.072 297.475
4.95
1 2 3 4 5
| a = c(exp(1),.05) tmm = proc.time() gama = optim(a, fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par gama proc.time() - tmm
|
- 1.89123499319297
- 0.0504755152875449
user system elapsed
283.513 0.127 248.781
1 2 3 4 5
| a = c(exp(1),.9) tmm = proc.time() gama = optim(a, fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par gama proc.time() - tmm
|
- 1.89459951460619
- 0.050258497374786
user system elapsed
291.112 0.080 257.158
1 2 3 4 5 6
| selected_annotations = c(1) a = c(.1,.05) tmm = proc.time() gama = optim(a, fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par gama proc.time() - tmm
|
- 0.255723407377646
- 0.999829134189715
user system elapsed
354.290 0.116 313.294
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| gene_prior = fread("/storage11_7T/fuy/TADA-A/db/MS_data/prior/new_uniform_gene_prior.txt") gene_prior = gene_prior[order(gene_prior$genename),]
fr <- function(x){ all_rr = x
logP_Zg0 = sumall0(data) logP_Zg1 = sumall1(data,selected_annotations,all_rr)
logP_table<-data.table(logP_Zg1 = logP_Zg1, logP_Zg0 = logP_Zg0, genename = names(data)) logP_table <- logP_table[gene_prior, on = "genename"] logP_table <- logP_table[complete.cases(logP_table)] idx = match(unique(logP_table$genename),logP_table$genename) idx2 = c(idx,nrow(logP_table) + 1) pr = logP_table[idx,]$prior ll_sum1 <- ll_sum(idx2,logP_table$logP_Zg1,logP_table$logP_Zg0,pr) ll_sum1 }
|
1 2 3 4 5 6 7 8
| selected_annotations = seq(1,2) tmm = proc.time()
gama = optim(rep(exp(1), 2), fr ,control=list("fnscale"=-1, "maxit" = optimization_iteration), hessian = TRUE)$par
proc.time() - tmm
gama
|
user system elapsed
449.122 0.208 412.240
- 1.19516468584344
- 1.6678512493307
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| logP_Zg0 = sumall0(data)
fr_pi <- function(par){
all_rr = par[1:length(selected_annotations)] gene_prior$prior <- rep(par[length(par)],nrow(gene_prior)) logP_Zg1 = sumall1(data,selected_annotations,all_rr)
logP_table<-data.table(logP_Zg1 = logP_Zg1, logP_Zg0 = logP_Zg0, genename = names(data)) logP_table <- logP_table[gene_prior, on = "genename"] logP_table <- logP_table[complete.cases(logP_table)] idx = match(unique(logP_table$genename),logP_table$genename) idx2 = c(idx,nrow(logP_table) + 1) pr = logP_table[idx,]$prior ll_sum1 <- ll_sum(idx2,logP_table$logP_Zg1,logP_table$logP_Zg0,pr) ll_sum1 }
|
1 2 3 4 5 6 7 8
| selected_annotations = seq(1,2) tmm = proc.time()
gama = optim(c(exp(1),exp(1),.05), fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par
proc.time() - tmm
gama
|
user system elapsed
540.017 0.233 478.671
- 1.09919237592268
- 1.49613778568841
- 0.076776311502852
1 2 3 4 5 6 7 8
| selected_annotations = seq(1,2) tmm = proc.time()
gama = optim(c(.1,.1,.05), fr_pi ,control=list("fnscale"=-1, "maxit" = optimization_iteration))$par
proc.time() - tmm
gama
|
user system elapsed
940.195 0.363 832.371
- 1.10186122803905
- 1.5013327085674
- 0.0764190730631155
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| gene_prior = fread("/storage11_7T/fuy/TADA-A/db/MS_data/prior/new_uniform_gene_prior.txt") gene_prior = gene_prior[order(gene_prior$genename),] gene_prior$prior = rep(0.0764190730631155,nrow(gene_prior))
post_fr <- function(x){ all_rr = x logP_Zg1 = sumall1(data,selected_annotations,all_rr) logP_table<-data.table(logP_Zg1 = logP_Zg1, logP_Zg0 = logP_Zg0, genename = names(data)) logP_table <- logP_table[gene_prior, on = "genename"] logP_table <- logP_table[complete.cases(logP_table)] u = unique(logP_table$genename) idx = match(u,logP_table$genename) idx2 = c(idx,nrow(logP_table) + 1) pr = logP_table[idx,]$prior post = post(idx2,logP_table$logP_Zg1,logP_table$logP_Zg0,pr) post.dt = data.table(genename =u,prior = post ) post.dt }
|
0.36704126967405
1 2
| all_rr = c(1.19516468584344,1.6678512493307) selected_annotations = c(1,2)
|
1
| logP_Zg1 = sumall1(data,selected_annotations,all_rr)
|
1 2 3 4 5 6 7 8
| logP_table<-data.table(logP_Zg1 = logP_Zg1, logP_Zg0 = logP_Zg0, genename = names(data)) logP_table <- logP_table[gene_prior, on = "genename"] logP_table <- logP_table[complete.cases(logP_table)] u = unique(logP_table$genename) idx = match(u,logP_table$genename) idx2 = c(idx,nrow(logP_table) + 1) pr = rep(0.05,length(idx)) post = post(idx2,logP_table$logP_Zg1,logP_table$logP_Zg0,pr)
|