library(dplyr)
data.brain.beta <- "../DATASETS/LONDON/step5_pca_filtering/"
data.brain.pheno <- "../DATASETS/LONDON/step6_neuron_comp/"
data.blood.beta <- "../DATASETS/LONDON_blood/step5_pca_filtering/"
data.blood.pheno <- "../DATASETS/LONDON_blood/step6_neuron_comp/"
data.dmr <- "../meta_analysis_region_results/step4_dmr_vs_cpgs/"
data.cpg <- "../meta_analysis_single_cpg_results/"
data.final <- "../London_blood_brain_correlation_results/"
data.final.beta <- "../London_blood_brain_correlation_results/using_betas/"
data.final.resid <- "../London_blood_brain_correlation_results/using_residuals/"
data.BECon <- "../DATASETS/LONDON_blood/step10_blood_brain_correlation/"
brain_beta <- readRDS(
paste0(data.brain.beta, "London_PFC_QNBMIQ_PCfiltered_withStageExclude.RDS")
)
brain_pheno <- readRDS(
paste0(data.brain.pheno, "pheno107_PFC_withNeuronProp_withStageExclude_df.RDS")
)
blood_beta <- readRDS(
paste0(data.blood.beta, "London_QNBMIQ_PCfiltered_withStatusExclude.RDS")
)
blood_pheno <- readRDS(
paste0(data.blood.pheno, "pheno_BLOOD_withBloodProp_withStatusExclude_df.rds")
)
### Renames variables
colnames(brain_pheno)[c(1, 3:ncol(brain_pheno))] <- paste0(
"brain_", colnames(brain_pheno)[c(1, 3:ncol(brain_pheno))]
)
colnames(blood_pheno)[c(1, 3:ncol(blood_pheno))] <- paste0(
"blood_", colnames(blood_pheno)[c(1, 3:ncol(blood_pheno))]
)
### Merge datasets
pheno_final <- merge(
brain_pheno, blood_pheno,
by = "subject.id"
) #dim: 69 23
### Limit beta matrices to samples in pheno_final
brain_beta_final <- brain_beta[, pheno_final$brain_sample]
blood_beta_final <- blood_beta[, pheno_final$blood_sample]
### Call in datasets with sig DMRs and CpGs
main_dmrs <- read.csv(
paste0(data.dmr, "meta_analysis_sig_no_crossHyb_smoking_ov_comb_p_with_sig_single_cpgs.csv")
)
main_cpgs <- read.csv(
paste0(data.cpg, "meta_analysis_single_cpg_sig_no_crossHyb_smoking_df.csv")
)
### Get probes from regions
probes.cluster.all <- coMethDMR::getPredefinedCluster(
arrayType = "450k",
clusterType = "regions"
)
## Setting options('download.file.method.GEOquery'='auto')
## Setting options('GEOquery.inmemory.gpl'=FALSE)
idx <- gsub("450k_Gene_3_200.|450k_InterGene_3_200.","",names(probes.cluster.all)) %in% main_dmrs$inputRegion
main_dmrs_cpgs <- probes.cluster.all[idx] %>% unlist %>% as.character() %>% unique
### Limit blood_beta and brain_beta to the probes above
brain_beta_regions <- brain_beta_final[
row.names(brain_beta_final) %in% main_dmrs_cpgs,
]
blood_beta_regions <- blood_beta_final[
row.names(blood_beta_final) %in% main_dmrs_cpgs,
]
identical(dim(brain_beta_regions), dim(blood_beta_regions))
## [1] TRUE
identical(row.names(brain_beta_regions), row.names(blood_beta_regions))
## [1] TRUE
blood_brain_cor <- plyr::adply(seq_len(nrow(brain_beta_regions)),
.margins = 1,
.fun = function(row){
spearman_cor <- cor.test(
brain_beta_regions[row,],
blood_beta_regions[row,],
method = "spearman"
)
data.frame(
cpg = row.names(brain_beta_regions)[row],
spearman_cor = spearman_cor$estimate,
pVal = spearman_cor$p.value,
stringsAsFactors = FALSE
)
},.id = NULL)
blood_brain_cor$fdr <- p.adjust(blood_brain_cor$pVal, method = "fdr")
blood_brain_cor
write.csv(
blood_brain_cor,
paste0(data.final.beta, "London_blood_brain_beta_correlation_dmrs.csv"),
row.names = FALSE
)
### Limit blood_beta and brain_beta to probes in main_cpgs
brain_beta_cpgs <- brain_beta_final[
row.names(brain_beta_final) %in% as.character(main_cpgs$cpg),
]
blood_beta_cpgs <- blood_beta_final[
row.names(blood_beta_final) %in% as.character(main_cpgs$cpg),
]
identical(dim(brain_beta_cpgs), dim(blood_beta_cpgs))
## [1] TRUE
identical(row.names(brain_beta_cpgs), row.names(blood_beta_cpgs))
## [1] TRUE
blood_brain_cor <- plyr::adply(seq_len(nrow(brain_beta_cpgs)),
.margins = 1,
.fun = function(row){
spearman_cor <- cor.test(
brain_beta_cpgs[row,],
blood_beta_cpgs[row,],
method = "spearman"
)
data.frame(
cpg = row.names(brain_beta_cpgs)[row],
spearman_cor = spearman_cor$estimate,
pVal = spearman_cor$p.value,
stringsAsFactors = FALSE
)
},.id = NULL)
blood_brain_cor$fdr <- p.adjust(blood_brain_cor$pVal, method = "fdr")
blood_brain_cor
write.csv(
blood_brain_cor,
paste0(data.final.beta, "London_blood_brain_beta_correlation_cpgs.csv"),
row.names = FALSE
)
### Compute M values
mvalue_mat <- log2( brain_beta_final /(1 - brain_beta_final))
### Reorder samples based on pheno_df
mvalue_mat <- mvalue_mat[, pheno_final$brain_sample]
identical(colnames(mvalue_mat), pheno_final$brain_sample)
## [1] TRUE
### Take residuals
lmF <- function(mval){
fitE <- lm(
as.numeric(mval) ~ brain_age.brain + brain_sex + brain_prop.neuron + as.character(brain_slide), #add batch if rosmap
data = pheno_final,
na.action = na.exclude
)
residuals (fitE)
}
library(doParallel)
## Loading required package: foreach
## Loading required package: iterators
## Loading required package: parallel
registerDoParallel(detectCores()/2)
resid <- plyr::adply(mvalue_mat,1,.fun = lmF,.progress = "time",.parallel = TRUE)
## Progress disabled when using parallel plyr
rownames(resid) <- resid[,1]
resid[,1] <- NULL
colnames(resid) <- colnames(mvalue_mat)
saveRDS(
resid,
paste0(data.final.resid, "London_PFC_QNBMIQ_PCfiltered_mvalResiduals.RDS")
)
### Compute M values
mvalue_mat <- log2(blood_beta_final / (1 - blood_beta_final))
### Reorder samples based on pheno_df
mvalue_mat <- mvalue_mat[, pheno_final$blood_sample]
identical(colnames(mvalue_mat), pheno_final$blood_sample)
## [1] TRUE
lmF <- function(mval){
fitE <- lm(
as.numeric(mval) ~ blood_age.blood + blood_sex + blood_slide +
blood_B + blood_NK + blood_CD4T + blood_CD8T + blood_Mono + blood_Neutro + blood_Eosino,
data = pheno_final,
na.action = na.exclude
)
residuals (fitE)
}
resid <- plyr::adply(mvalue_mat,1,.fun = lmF,.progress = "time",.parallel = TRUE)
## Progress disabled when using parallel plyr
rownames(resid) <- resid[,1]
resid[,1] <- NULL
colnames(resid) <- colnames(mvalue_mat)
saveRDS(
resid,
paste0(data.final.resid, "LONDON_blood_QNBMIQ_PCfiltered_mvalResiduals.RDS")
)
### Call in brain and blood residual matrices
brain_beta_final <- as.matrix(
readRDS(
paste0(data.final.resid, "London_PFC_QNBMIQ_PCfiltered_mvalResiduals.RDS")
)
)
blood_beta_final <- as.matrix(
readRDS(
paste0(data.final.resid, "LONDON_blood_QNBMIQ_PCfiltered_mvalResiduals.RDS")
)
)
### Call in datasets with sig DMRs and CpGs
main_dmrs <- read.csv(
paste0(data.dmr, "meta_analysis_sig_no_crossHyb_smoking_ov_comb_p_with_sig_single_cpgs.csv")
)
main_cpgs <- read.csv(
paste0(data.cpg, "meta_analysis_single_cpg_sig_no_crossHyb_smoking_df.csv")
)
### Get probes from regions
probes.cluster.all <- coMethDMR::getPredefinedCluster(
arrayType = "450k",
clusterType = "regions"
)
idx <- gsub("450k_Gene_3_200.|450k_InterGene_3_200.","",names(probes.cluster.all)) %in% main_dmrs$inputRegion
main_dmrs_cpgs <- probes.cluster.all[idx] %>% unlist %>% as.character() %>% unique
### Limit blood_beta and brain_beta to the probes above
brain_beta_regions <- brain_beta_final[
row.names(brain_beta_final) %in% main_dmrs_cpgs,
]
blood_beta_regions <- blood_beta_final[
row.names(blood_beta_final) %in% main_dmrs_cpgs,
]
identical(dim(brain_beta_regions), dim(blood_beta_regions))
## [1] TRUE
identical(row.names(brain_beta_regions), row.names(blood_beta_regions))
## [1] TRUE
blood_brain_cor <- lapply(seq_len(nrow(brain_beta_regions)), function(row){
spearman_cor <- cor.test(
brain_beta_regions[row,],
blood_beta_regions[row,],
method = "spearman"
)
data.frame(
cpg = row.names(brain_beta_regions)[row],
spearman_cor = spearman_cor$estimate,
pVal = spearman_cor$p.value,
stringsAsFactors = FALSE
)
})
blood_brain_cor <- do.call(rbind, blood_brain_cor)
blood_brain_cor$fdr <- p.adjust(blood_brain_cor$pVal, method = "fdr")
write.csv(
blood_brain_cor,
paste0(data.final.resid, "London_blood_brain_residuals_correlation_dmrs.csv"),
row.names = FALSE
)
### Call in datasets
### Limit blood_beta and brain_beta to probes in main_cpgs
brain_beta_cpgs <- brain_beta_final[
row.names(brain_beta_final) %in% as.character(main_cpgs$cpg),
]
blood_beta_cpgs <- blood_beta_final[
row.names(blood_beta_final) %in% as.character(main_cpgs$cpg),
]
identical(dim(brain_beta_cpgs), dim(blood_beta_cpgs))
## [1] TRUE
identical(row.names(brain_beta_cpgs), row.names(blood_beta_cpgs))
## [1] TRUE
blood_brain_cor <- lapply(seq_len(nrow(brain_beta_cpgs)), function(row){
spearman_cor <- cor.test(
brain_beta_cpgs[row,],
blood_beta_cpgs[row,],
method = "spearman"
)
data.frame(
cpg = row.names(brain_beta_cpgs)[row],
spearman_cor = spearman_cor$estimate,
pVal = spearman_cor$p.value,
stringsAsFactors = FALSE
)
})
blood_brain_cor <- do.call(rbind, blood_brain_cor)
blood_brain_cor$fdr <- p.adjust(blood_brain_cor$pVal, method = "fdr")
write.csv(
blood_brain_cor,
paste0(data.final.resid, "London_blood_brain_residuals_correlation_cpgs.csv"),
row.names = FALSE
)
### Call in datasets
dmr_beta <- read.csv(
paste0(data.final.beta, "London_blood_brain_beta_correlation_dmrs.csv")
)
dmr_resid <- read.csv(
paste0(data.final.resid, "London_blood_brain_residuals_correlation_dmrs.csv")
)
cpg_beta <- read.csv(
paste0(data.final.beta, "London_blood_brain_beta_correlation_cpgs.csv")
)
cpg_resid <- read.csv(
paste0(data.final.resid, "London_blood_brain_residuals_correlation_cpgs.csv")
)
### Rename variables
colnames(dmr_beta)[2:4] <- paste0("beta_", colnames(dmr_beta)[2:4])
colnames(dmr_resid)[2:4] <- paste0("residual_", colnames(dmr_resid)[2:4])
colnames(cpg_beta)[2:4] <- paste0("beta_", colnames(cpg_beta)[2:4])
colnames(cpg_resid)[2:4] <- paste0("residual_", colnames(cpg_resid)[2:4])
### Merge datasets
dmr_cor <- merge(
dmr_beta,
dmr_resid,
by = "cpg"
)
cpg_cor <- merge(
cpg_beta, cpg_resid,
by = "cpg"
)
### Call in BECon results
becon_dmrs <- read.csv(
paste0(data.BECon, "BECon_main_dmrs_blood_brain_correlation.csv")
)
becon_cpgs <- read.csv(
paste0(data.BECon, "BECon_main_cpgs_blood_brain_correlation.csv")
)
### Select and rename variables
becon_dmrs <- becon_dmrs[
,c("CpG.ID", "Cor.Blood.BA7", "Cor.Blood..BA10", "Cor.Blood..BA20", "Mean.Cor.All.Brain")
]
colnames(becon_dmrs) <- c(
"cpg", "BECon_cor_BA7", "BECon_cor_BA10", "BECon_cor_BA20", "BECon_cor_mean"
)
becon_cpgs <- becon_cpgs[
,c("CpG.ID", "Cor.Blood.BA7", "Cor.Blood..BA10", "Cor.Blood..BA20", "Mean.Cor.All.Brain")
]
colnames(becon_cpgs) <- c(
"cpg", "BECon_cor_BA7", "BECon_cor_BA10", "BECon_cor_BA20", "BECon_cor_mean"
)
### Merge BECon results with our results
dmr_final <- merge(
dmr_cor,
becon_dmrs,
by = "cpg",
all.x = TRUE
)
cpg_final <- merge(
cpg_cor,
becon_cpgs,
by = "cpg",
all.x = TRUE
)
### Save datasets
write.csv(
dmr_final,
paste0(data.final, "London_blood_brain_correlation_dmrs.csv"),
row.names = FALSE
)
write.csv(
cpg_final,
paste0(data.final, "London_blood_brain_correlation_cpgs.csv"),
row.names = FALSE
)
sum(
abs(dmr_final$residual_spearman_cor) >= 0.5
)
## [1] 14
# [1] 14
sum(
dmr_final$residual_spearman_cor >= 0.5
)
## [1] 14
# [1] 14
sum(
abs(dmr_final$residual_spearman_cor) >= 0.5 &
dmr_final$residual_fdr < 0.05
)
## [1] 14
# [1] 14
dmr_final[
abs(dmr_final$residual_spearman_cor) >= 0.5 &
dmr_final$residual_fdr < 0.05,
][, c("cpg", "BECon_cor_BA7", "BECon_cor_BA10", "BECon_cor_BA20", "BECon_cor_mean")]
### Conclustion: all correlation > 0.5 are positive correlated, and all significant
sum(
abs(cpg_final$residual_spearman_cor) >= 0.5
)
## [1] 45
# [1] 45
sum(
cpg_final$residual_spearman_cor >= 0.5
)
## [1] 45
# [1] 45
sum(
abs(cpg_final$residual_spearman_cor) >= 0.5 &
cpg_final$residual_fdr < 0.05
)
## [1] 45
# [1] 45
cpg_final[
abs(cpg_final$residual_spearman_cor) >= 0.5 &
cpg_final$residual_fdr < 0.05,
][, c("cpg", "BECon_cor_BA7", "BECon_cor_BA10", "BECon_cor_BA20")]
### Conclustion: all correlation > 0.5 are positive correlated, and all significant
cpg_final %>% rbind(dmr_final) %>%
dplyr::filter(
abs(residual_spearman_cor) > 0.5 &
abs(beta_spearman_cor) > 0.5 &
residual_fdr < 0.05 &
beta_fdr < 0.05 &
BECon_cor_BA10 > 0.5
)
devtools::session_info()
## ─ Session info ───────────────────────────────────────────────────────────────
## setting value
## version R Under development (unstable) (2020-02-25 r77857)
## os macOS Catalina 10.15.3
## system x86_64, darwin15.6.0
## ui X11
## language (EN)
## collate en_US.UTF-8
## ctype en_US.UTF-8
## tz America/New_York
## date 2020-04-26
##
## ─ Packages ───────────────────────────────────────────────────────────────────
## package * version date lib
## annotate 1.65.1 2020-01-27 [1]
## AnnotationDbi 1.49.1 2020-01-25 [1]
## askpass 1.1 2019-01-13 [1]
## assertthat 0.2.1 2019-03-21 [1]
## backports 1.1.6 2020-04-05 [1]
## base64 2.0 2016-05-10 [1]
## beanplot 1.2 2014-09-19 [1]
## Biobase 2.47.3 2020-03-16 [1]
## BiocFileCache 1.11.6 2020-04-16 [1]
## BiocGenerics 0.33.3 2020-03-23 [1]
## BiocParallel 1.21.2 2019-12-21 [1]
## biomaRt 2.43.5 2020-04-02 [1]
## Biostrings 2.55.7 2020-03-24 [1]
## bit 1.1-15.2 2020-02-10 [1]
## bit64 0.9-7 2017-05-08 [1]
## bitops 1.0-6 2013-08-17 [1]
## blob 1.2.1 2020-01-20 [1]
## boot 1.3-24 2019-12-20 [1]
## bumphunter 1.29.0 2019-11-07 [1]
## callr 3.4.3 2020-03-28 [1]
## cli 2.0.2 2020-02-28 [1]
## codetools 0.2-16 2018-12-24 [1]
## colorspace 1.4-1 2019-03-18 [1]
## coMethDMR 0.0.0.9001 2020-03-24 [1]
## crayon 1.3.4 2017-09-16 [1]
## curl 4.3 2019-12-02 [1]
## data.table 1.12.9 2020-02-26 [1]
## DBI 1.1.0 2019-12-15 [1]
## dbplyr 1.4.3 2020-04-19 [1]
## DelayedArray 0.13.12 2020-04-10 [1]
## DelayedMatrixStats 1.9.1 2020-03-30 [1]
## desc 1.2.0 2018-05-01 [1]
## devtools 2.3.0 2020-04-10 [1]
## digest 0.6.25 2020-02-23 [1]
## doParallel * 1.0.15 2019-08-02 [1]
## doRNG 1.8.2 2020-01-27 [1]
## dplyr * 0.8.99.9002 2020-04-02 [1]
## ellipsis 0.3.0 2019-09-20 [1]
## evaluate 0.14 2019-05-28 [1]
## fansi 0.4.1 2020-01-08 [1]
## foreach * 1.5.0 2020-03-30 [1]
## fs 1.4.1 2020-04-04 [1]
## genefilter 1.69.0 2019-11-06 [1]
## generics 0.0.2 2018-11-29 [1]
## GenomeInfoDb 1.23.17 2020-04-13 [1]
## GenomeInfoDbData 1.2.3 2020-04-20 [1]
## GenomicAlignments 1.23.2 2020-03-24 [1]
## GenomicFeatures 1.39.7 2020-03-19 [1]
## GenomicRanges 1.39.3 2020-04-08 [1]
## GEOquery 2.55.1 2019-11-18 [1]
## ggplot2 3.3.0 2020-03-05 [1]
## ggpubr 0.2.5 2020-02-13 [1]
## ggsignif 0.6.0 2019-08-08 [1]
## glue 1.4.0 2020-04-03 [1]
## gtable 0.3.0 2019-03-25 [1]
## HDF5Array 1.15.18 2020-04-10 [1]
## hms 0.5.3 2020-01-08 [1]
## htmltools 0.4.0 2019-10-04 [1]
## httr 1.4.1 2019-08-05 [1]
## IlluminaHumanMethylation450kanno.ilmn12.hg19 0.6.0 2020-03-24 [1]
## IlluminaHumanMethylationEPICanno.ilm10b2.hg19 0.6.0 2020-03-24 [1]
## illuminaio 0.29.0 2019-11-06 [1]
## IRanges 2.21.8 2020-03-25 [1]
## iterators * 1.0.12 2019-07-26 [1]
## jsonlite 1.6.1 2020-02-02 [1]
## knitr 1.28 2020-02-06 [1]
## lattice 0.20-41 2020-04-02 [1]
## lifecycle 0.2.0 2020-03-06 [1]
## limma 3.43.8 2020-04-14 [1]
## lme4 1.1-23 2020-04-07 [1]
## lmerTest 3.1-2 2020-04-08 [1]
## locfit 1.5-9.4 2020-03-25 [1]
## magrittr 1.5 2014-11-22 [1]
## MASS 7.3-51.5 2019-12-20 [1]
## Matrix 1.2-18 2019-11-27 [1]
## matrixStats 0.56.0 2020-03-13 [1]
## mclust 5.4.6 2020-04-11 [1]
## memoise 1.1.0 2017-04-21 [1]
## minfi 1.33.1 2020-03-05 [1]
## minqa 1.2.4 2014-10-09 [1]
## multtest 2.43.1 2020-03-12 [1]
## munsell 0.5.0 2018-06-12 [1]
## nlme 3.1-147 2020-04-13 [1]
## nloptr 1.2.2.1 2020-03-11 [1]
## nor1mix 1.3-0 2019-06-13 [1]
## numDeriv 2016.8-1.1 2019-06-06 [1]
## openssl 1.4.1 2019-07-18 [1]
## pillar 1.4.3 2019-12-20 [1]
## pkgbuild 1.0.6 2019-10-09 [1]
## pkgconfig 2.0.3 2019-09-22 [1]
## pkgload 1.0.2 2018-10-29 [1]
## plyr 1.8.6 2020-03-03 [1]
## preprocessCore 1.49.2 2020-02-01 [1]
## prettyunits 1.1.1 2020-01-24 [1]
## processx 3.4.2 2020-02-09 [1]
## progress 1.2.2 2019-05-16 [1]
## ps 1.3.2 2020-02-13 [1]
## purrr 0.3.4 2020-04-17 [1]
## quadprog 1.5-8 2019-11-20 [1]
## R6 2.4.1 2019-11-12 [1]
## rappdirs 0.3.1 2016-03-28 [1]
## RColorBrewer 1.1-2 2014-12-07 [1]
## Rcpp 1.0.4.6 2020-04-09 [1]
## RCurl 1.98-1.2 2020-04-18 [1]
## readr 1.3.1 2018-12-21 [1]
## remotes 2.1.1 2020-02-15 [1]
## reshape 0.8.8 2018-10-23 [1]
## reshape2 1.4.4 2020-04-09 [1]
## rhdf5 2.31.10 2020-04-02 [1]
## Rhdf5lib 1.9.3 2020-04-15 [1]
## rlang 0.4.5.9000 2020-03-20 [1]
## rmarkdown 2.1 2020-01-20 [1]
## rngtools 1.5 2020-01-23 [1]
## rprojroot 1.3-2 2018-01-03 [1]
## Rsamtools 2.3.7 2020-03-18 [1]
## RSQLite 2.2.0 2020-01-07 [1]
## rtracklayer 1.47.0 2019-11-06 [1]
## S4Vectors 0.25.15 2020-04-04 [1]
## scales 1.1.0 2019-11-18 [1]
## scrime 1.3.5 2018-12-01 [1]
## sessioninfo 1.1.1 2018-11-05 [1]
## siggenes 1.61.0 2019-11-06 [1]
## statmod 1.4.34 2020-02-17 [1]
## stringi 1.4.6 2020-02-17 [1]
## stringr 1.4.0 2019-02-10 [1]
## SummarizedExperiment 1.17.5 2020-03-27 [1]
## survival 3.1-12 2020-04-10 [1]
## testthat 2.3.2 2020-03-02 [1]
## tibble 3.0.1 2020-04-20 [1]
## tidyr 1.0.2 2020-01-24 [1]
## tidyselect 1.0.0 2020-01-27 [1]
## usethis 1.6.0 2020-04-09 [1]
## vctrs 0.2.99.9010 2020-04-02 [1]
## withr 2.1.2 2018-03-15 [1]
## xfun 0.13 2020-04-13 [1]
## XML 3.99-0.3 2020-01-20 [1]
## xml2 1.3.1 2020-04-09 [1]
## xtable 1.8-4 2019-04-21 [1]
## XVector 0.27.2 2020-03-24 [1]
## yaml 2.2.1 2020-02-01 [1]
## zlibbioc 1.33.1 2020-01-24 [1]
## source
## Bioconductor
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## Bioconductor
## Bioconductor
## Bioconductor
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## local
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Github (tidyverse/dplyr@affb977)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## Bioconductor
## Bioconductor
## Github (Bioconductor/GenomicRanges@70e6e69)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## Bioconductor
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## Github (r-lib/rlang@a90b04b)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## Bioconductor
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Github (r-lib/vctrs@fd24927)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## CRAN (R 4.0.0)
## Bioconductor
## CRAN (R 4.0.0)
## Bioconductor
##
## [1] /Library/Frameworks/R.framework/Versions/4.0/Resources/library