The goal of concordexR is to identify spatial homogeneous regions (SHRs) as defined in the recent manuscrpt“Identification of spatial homogenous regions in tissues with concordex”. Briefly, SHRs are are domains that are homogeneous with respect to cell type composition. concordex relies on the the k-nearest-neighbor (kNN) graph to representing similarities between cells and uses common clustering algorithms to identify SHRs.
This package is under active development will be available in the Bioconductor version 3.20 release.
Until then, please install the package from Github or from the Bioconductor devel branch.
if (!requireNamespace("BiocManager", quietly=TRUE))
install.packages("BiocManager")
#BiocManager::install("concordexR", version="devel")
devtools::install_github("pachterlab/concordexR")
This is a basic example which shows you how to solve a common problem:
library(concordexR)
library(SFEData)
sfe <- McKellarMuscleData("small")
#> see ?SFEData and browseVignettes('SFEData') for documentation
#> loading from cache
#> require("SpatialFeatureExperiment")
res <- calculateConcordex(sfe, labels=colData(sfe)[["in_tissue"]])
sessionInfo()
#> R Under development (unstable) (2024-10-21 r87258)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.1 LTS
#>
#> Matrix products: default
#> BLAS: /home/biocbuild/bbs-3.21-bioc/R/lib/libRblas.so
#> LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0
#>
#> locale:
#> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
#> [3] LC_TIME=en_GB 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: America/New_York
#> tzcode source: system (glibc)
#>
#> attached base packages:
#> [1] stats4 stats graphics grDevices utils datasets methods
#> [8] base
#>
#> other attached packages:
#> [1] SpatialFeatureExperiment_1.9.0 SFEData_1.9.0
#> [3] patchwork_1.3.0 scater_1.35.0
#> [5] ggplot2_3.5.1 scuttle_1.17.0
#> [7] bluster_1.17.0 BiocNeighbors_2.1.0
#> [9] TENxPBMCData_1.25.0 HDF5Array_1.35.1
#> [11] rhdf5_2.51.0 DelayedArray_0.33.1
#> [13] SparseArray_1.7.1 S4Arrays_1.7.1
#> [15] abind_1.4-8 Matrix_1.7-1
#> [17] SingleCellExperiment_1.29.0 SummarizedExperiment_1.37.0
#> [19] Biobase_2.67.0 GenomicRanges_1.59.0
#> [21] GenomeInfoDb_1.43.0 IRanges_2.41.0
#> [23] S4Vectors_0.45.0 BiocGenerics_0.53.1
#> [25] generics_0.1.3 MatrixGenerics_1.19.0
#> [27] matrixStats_1.4.1 concordexR_1.7.0
#> [29] BiocStyle_2.35.0
#>
#> loaded via a namespace (and not attached):
#> [1] bitops_1.0-9 filelock_1.0.3
#> [3] tibble_3.2.1 R.oo_1.27.0
#> [5] lifecycle_1.0.4 sf_1.0-19
#> [7] edgeR_4.5.0 lattice_0.22-6
#> [9] MASS_7.3-61 magrittr_2.0.3
#> [11] limma_3.63.1 sass_0.4.9
#> [13] rmarkdown_2.29 jquerylib_0.1.4
#> [15] yaml_2.3.10 sp_2.1-4
#> [17] cowplot_1.1.3 DBI_1.2.3
#> [19] zlibbioc_1.53.0 purrr_1.0.2
#> [21] R.utils_2.12.3 RCurl_1.98-1.16
#> [23] rappdirs_0.3.3 GenomeInfoDbData_1.2.13
#> [25] ggrepel_0.9.6 irlba_2.3.5.1
#> [27] terra_1.7-83 units_0.8-5
#> [29] dqrng_0.4.1 DelayedMatrixStats_1.29.0
#> [31] codetools_0.2-20 DropletUtils_1.27.0
#> [33] tidyselect_1.2.1 UCSC.utils_1.3.0
#> [35] farver_2.1.2 ScaledMatrix_1.15.0
#> [37] viridis_0.6.5 BiocFileCache_2.15.0
#> [39] jsonlite_1.8.9 e1071_1.7-16
#> [41] tools_4.5.0 Rcpp_1.0.13-1
#> [43] glue_1.8.0 gridExtra_2.3
#> [45] xfun_0.49 EBImage_4.49.0
#> [47] dplyr_1.1.4 withr_3.0.2
#> [49] BiocManager_1.30.25 fastmap_1.2.0
#> [51] boot_1.3-31 rhdf5filters_1.19.0
#> [53] fansi_1.0.6 spData_2.3.3
#> [55] digest_0.6.37 rsvd_1.0.5
#> [57] R6_2.5.1 mime_0.12
#> [59] wk_0.9.4 colorspace_2.1-1
#> [61] jpeg_0.1-10 RSQLite_2.3.7
#> [63] R.methodsS3_1.8.2 utf8_1.2.4
#> [65] data.table_1.16.2 FNN_1.1.4.1
#> [67] class_7.3-22 httr_1.4.7
#> [69] htmlwidgets_1.6.4 spdep_1.3-6
#> [71] uwot_0.2.2 pkgconfig_2.0.3
#> [73] gtable_0.3.6 blob_1.2.4
#> [75] XVector_0.47.0 htmltools_0.5.8.1
#> [77] bookdown_0.41 fftwtools_0.9-11
#> [79] scales_1.3.0 png_0.1-8
#> [81] SpatialExperiment_1.17.0 knitr_1.48
#> [83] rjson_0.2.23 curl_6.0.0
#> [85] proxy_0.4-27 cachem_1.1.0
#> [87] BiocVersion_3.21.1 KernSmooth_2.23-24
#> [89] parallel_4.5.0 vipor_0.4.7
#> [91] AnnotationDbi_1.69.0 s2_1.1.7
#> [93] pillar_1.9.0 grid_4.5.0
#> [95] vctrs_0.6.5 BiocSingular_1.23.0
#> [97] dbplyr_2.5.0 beachmat_2.23.0
#> [99] sfheaders_0.4.4 cluster_2.1.6
#> [101] beeswarm_0.4.0 evaluate_1.0.1
#> [103] zeallot_0.1.0 isoband_0.2.7
#> [105] tinytex_0.54 magick_2.8.5
#> [107] cli_3.6.3 locfit_1.5-9.10
#> [109] compiler_4.5.0 rlang_1.1.4
#> [111] crayon_1.5.3 labeling_0.4.3
#> [113] classInt_0.4-10 ggbeeswarm_0.7.2
#> [115] viridisLite_0.4.2 deldir_2.0-4
#> [117] BiocParallel_1.41.0 munsell_0.5.1
#> [119] Biostrings_2.75.0 tiff_0.1-12
#> [121] ExperimentHub_2.15.0 sparseMatrixStats_1.19.0
#> [123] bit64_4.5.2 Rhdf5lib_1.29.0
#> [125] KEGGREST_1.47.0 statmod_1.5.0
#> [127] highr_0.11 AnnotationHub_3.15.0
#> [129] igraph_2.1.1 memoise_2.0.1
#> [131] bslib_0.8.0 bit_4.5.0