Prioritization of inbred mouse strains for resolving genetic regions

Introduction

This R package provides methods for genetic finemapping in inbred mice by taking advantage of their very high homozygosity rate (>95%).

Method prio allows to select strain combinations which best refine a specified genetic region. E.g. if a crossing experiment with two inbred mouse strains ‘strain1’ and ‘strain2’ resulted in a QTL, the outputted strain combinations can be used to refine the respective region in further crossing experiments and to select candidate genes.

Installation

if(!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("MouseFM")

Loading package

library(MouseFM)

Example function calls

Available mouse strains

avail_strains()
#>              id        strain
#> 1  129P2_OlaHsd  129P2/OlaHsd
#> 2   129S1_SvImJ   129S1/SvImJ
#> 3  129S5SvEvBrd 129S5/SvEvBrd
#> 4           A_J           A/J
#> 5         AKR_J         AKR/J
#> 6       BALB_cJ       BALB/cJ
#> 7          BTBR          BTBR
#> 8       BUB_BnJ       BUB/BnJ
#> 9       C3H_HeH       C3H/HeH
#> 10      C3H_HeJ       C3H/HeJ
#> 11    C57BL_10J     C57BL/10J
#> 12     C57BL_6J      C57BL/6J
#> 13    C57BL_6NJ     C57BL/6NJ
#> 14    C57BR_cdJ     C57BR/cdJ
#> 15       C57L_J        C57L/J
#> 16        C58_J         C58/J
#> 17     CAST_EiJ      CAST/EiJ
#> 18        CBA_J         CBA/J
#> 19       DBA_1J        DBA/1J
#> 20       DBA_2J        DBA/2J
#> 21       FVB_NJ        FVB/NJ
#> 22        I_LnJ         I/LnJ
#> 23       KK_HiJ        KK/HiJ
#> 24    LEWES_EiJ     LEWES/EiJ
#> 25         LP_J          LP/J
#> 26     MOLF_EiJ      MOLF/EiJ
#> 27   NOD_ShiLtJ    NOD/ShiLtJ
#> 28     NZB_B1NJ      NZB/B1NJ
#> 29    NZO_HlLtJ     NZO/HlLtJ
#> 30     NZW_LacJ      NZW/LacJ
#> 31      PWK_PhJ       PWK/PhJ
#> 32         RF_J          RF/J
#> 33      SEA_GnJ       SEA/GnJ
#> 34    SPRET_EiJ     SPRET/EiJ
#> 35        ST_bJ         ST/bJ
#> 36      WSB_EiJ       WSB/EiJ
#> 37  ZALENDE_EiJ   ZALENDE/EiJ

Prioritize additional mouse strains for a given region which was identified in a crossing experiment with strain1 C57BL_6J and strain2 AKR_J.

df = prio("chr1", start=5000000, end=6000000, strain1="C57BL_6J", strain2="AKR_J")
#> Query chr1:5,000,000-6,000,000
#> Calculate reduction factors...
#> Set size 1: 35 combinations
#> Set size 1: continue with 20 of 35 strains
#> Set size 2: 190 combinations
#> Set size 3: 1,140 combinations

View meta information

comment(df)
#> NULL

Extract the combinations with the best refinement

get_top(df$reduction, n_top=3)
#>    strain1 strain2              combination      mean       min       max n
#> 8 C57BL_6J   AKR_J C3H_HeH,DBA_1J,SPRET_EiJ 0.8068057 0.7467057 0.9926794 3
#> 7 C57BL_6J   AKR_J C3H_HeH,DBA_2J,SPRET_EiJ 0.8068057 0.7467057 0.9926794 3
#> 6 C57BL_6J   AKR_J C3H_HeJ,DBA_1J,SPRET_EiJ 0.8068057 0.7467057 0.9926794 3

Create plots

plots = vis_reduction_factors(df$genotypes, df$reduction, 2)
plots[[1]]

plots[[2]]

Output of Session Info

The output of sessionInfo() on the system on which this document was compiled:

sessionInfo()
#> R version 4.4.2 (2024-10-31)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.1 LTS
#> 
#> Matrix products: default
#> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 
#> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so;  LAPACK version 3.12.0
#> 
#> locale:
#>  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
#>  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=C              
#>  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
#>  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
#>  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
#> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
#> 
#> time zone: Etc/UTC
#> tzcode source: system (glibc)
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] MouseFM_1.17.0   BiocStyle_2.35.0
#> 
#> loaded via a namespace (and not attached):
#>  [1] tidyselect_1.2.1        farver_2.1.2            dplyr_1.1.4            
#>  [4] blob_1.2.4              filelock_1.0.3          Biostrings_2.75.1      
#>  [7] fastmap_1.2.0           BiocFileCache_2.15.0    digest_0.6.37          
#> [10] lifecycle_1.0.4         KEGGREST_1.47.0         RSQLite_2.3.8          
#> [13] magrittr_2.0.3          compiler_4.4.2          rlang_1.1.4            
#> [16] sass_0.4.9              progress_1.2.3          tools_4.4.2            
#> [19] utf8_1.2.4              yaml_2.3.10             data.table_1.16.2      
#> [22] knitr_1.49              prettyunits_1.2.0       bit_4.5.0              
#> [25] curl_6.0.1              plyr_1.8.9              xml2_1.3.6             
#> [28] withr_3.0.2             purrr_1.0.2             BiocGenerics_0.53.3    
#> [31] sys_3.4.3               grid_4.4.2              stats4_4.4.2           
#> [34] fansi_1.0.6             colorspace_2.1-1        ggplot2_3.5.1          
#> [37] scales_1.3.0            gtools_3.9.5            biomaRt_2.63.0         
#> [40] cli_3.6.3               rmarkdown_2.29          crayon_1.5.3           
#> [43] generics_0.1.3          rlist_0.4.6.2           httr_1.4.7             
#> [46] reshape2_1.4.4          DBI_1.2.3               cachem_1.1.0           
#> [49] stringr_1.5.1           zlibbioc_1.52.0         AnnotationDbi_1.69.0   
#> [52] BiocManager_1.30.25     XVector_0.47.0          vctrs_0.6.5            
#> [55] jsonlite_1.8.9          IRanges_2.41.1          hms_1.1.3              
#> [58] S4Vectors_0.45.2        bit64_4.5.2             maketools_1.3.1        
#> [61] jquerylib_0.1.4         tidyr_1.3.1             glue_1.8.0             
#> [64] stringi_1.8.4           gtable_0.3.6            GenomeInfoDb_1.43.2    
#> [67] GenomicRanges_1.59.1    UCSC.utils_1.3.0        munsell_0.5.1          
#> [70] tibble_3.2.1            pillar_1.9.0            rappdirs_0.3.3         
#> [73] htmltools_0.5.8.1       GenomeInfoDbData_1.2.13 R6_2.5.1               
#> [76] dbplyr_2.5.0            httr2_1.0.7             evaluate_1.0.1         
#> [79] Biobase_2.67.0          png_0.1-8               memoise_2.0.1          
#> [82] bslib_0.8.0             Rcpp_1.0.13-1           xfun_0.49              
#> [85] buildtools_1.0.0        pkgconfig_2.0.3