SpatialFeatureExperiment

Extension of SpatialExperiment with sf

https://github.com/pachterlab/spatialfeatureexperiment

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    2 of 7 committers (28.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.7%) to scientific vocabulary
Last synced: 7 months ago · JSON representation

Repository

Extension of SpatialExperiment with sf

Basic Info
Statistics
  • Stars: 55
  • Watchers: 3
  • Forks: 13
  • Open Issues: 30
  • Releases: 0
Created about 4 years ago · Last pushed 8 months ago
Metadata Files
Readme Changelog Contributing License

README.md

SpatialFeatureExperiment

Lifecycle: experimental codecov R-CMD-check <!-- badges: end -->

Installation

This package is available on Bioconductor version 3.16 and above. It can be installed with

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

Documentation can be accessed on this website.

Introduction

SpatialFeatureExperiment (SFE) is a new S4 class built on top of SpatialExperiment (SPE). SpatialFeatureExperiment incorporates geometries and geometry operations with the sf package. Examples of supported geometries are Visium spots represented with polygons corresponding to their size, cell or nuclei segmentation polygons, tissue boundary polygons, pathologist annotation of histological regions, and transcript spots of genes. Using sf, SpatialFeatureExperiment leverages well-established and optimized C++ libraries underlying sf for geometry operations, including algorithms for determining whether geometries intersect, finding intersection geometries, buffering geometries with margins, etc. A schematic of the SFE object is shown below:

Below is a list of SFE features that extend the SPE object:

  • colGeometries are sf data frames associated with the entities that correspond to columns of the gene count matrix, such as Visium spots or cells. The geometries in the sf data frames can be Visium spot centroids, Visium spot polygons, or for datasets with single cell resolution, cell or nuclei segmentations. Multiple colGeometries can be stored in the same SFE object, such as one for cell segmentation and another for nuclei segmentation. There can be non-spatial, attribute columns in a colGeometry rather than colData, because the sf class allows users to specify how attributes relate to geometries, such as "constant", "aggregate", and "identity". See the agr argument of the st_sf documentation.
  • colGraphs are spatial neighborhood graphs of cells or spots. The graphs have class listw (spdep package), and the colPairs of SingleCellExperiment was not used so no conversion is necessary to use the numerous spatial dependency functions from spdep, such as those for Moran's I, Geary's C, Getis-Ord Gi*, LOSH, etc. Conversion is also not needed for other classical spatial statistics packages such as spatialreg and adespatial.
  • rowGeometries are similar to colGeometries, but support entities that correspond to rows of the gene count matrix, such as genes. A potential use case is to store transcript spots for each gene in smFISH or in situ sequencing based datasets.
  • rowGraphs are similar to colGraphs. A potential use case may be spatial colocalization of transcripts of different genes.
  • annotGeometries are sf data frames associated with the dataset but not directly with the gene count matrix, such as tissue boundaries, histological regions, cell or nuclei segmentation in Visium datasets, and etc. These geometries are stored in this object to facilitate plotting and using sf for operations such as to find the number of nuclei in each Visium spot and which histological regions each Visium spot intersects. Unlike colGeometries and rowGeometries, the number of rows in the sf data frames in annotGeometries is not constrained by the dimension of the gene count matrix and can be arbitrary.
  • annotGraphs are similar to colGraphs and rowGraphs, but are for entities not directly associated with the gene count matrix, such as spatial neighborhood graphs for nuclei in Visium datasets, or other objects like myofibers. These graphs are relevant to spdep analyses of attributes of these geometries such as spatial autocorrelation in morphological metrics of myofibers and nuclei. With geometry operations with sf, these attributes and results of analyses of these attributes (e.g. spatial regions defined by the attributes) may be related back to gene expression.
  • localResults are similar to reducedDims in SingleCellExperiment, but stores results from univariate and bivariate local spatial analysis results, such as from localmoran, Getis-Ord Gi*, AND local spatial heteroscedasticity (LOSH). Unlike in reducedDims, for each type of results (type is the type of analysis such as Getis-Ord Gi*), each feature (e.g. gene) or pair of features for which the analysis is performed has its own results. The local spatial analyses can also be performed for attributes of colGeometries and annotGeometries in addition to gene expression and colData. Results of multivariate spatial analysis such as MULTISPATI PCA can be stored in reducedDims.

Citation

Voyager: exploratory single-cell genomics data analysis with geospatial statistics. Lambda Moses, Pétur Helgi Einarsson, Kayla Jackson, Laura Luebbert, A. Sina Booeshaghi, Sindri Antonsson, Páll Melsted, Lior Pachter bioRxiv 2023.07.20.549945; doi: https://doi.org/10.1101/2023.07.20.549945

Owner

  • Name: Pachter Lab
  • Login: pachterlab
  • Kind: organization
  • Email: lpachter@caltech.edu
  • Location: Pasadena, CA

GitHub Events

Total
  • Commit comment event: 1
  • Issues event: 29
  • Watch event: 15
  • Issue comment event: 46
  • Push event: 71
  • Pull request review event: 3
  • Pull request event: 6
  • Fork event: 6
Last Year
  • Commit comment event: 1
  • Issues event: 29
  • Watch event: 15
  • Issue comment event: 46
  • Push event: 71
  • Pull request review event: 3
  • Pull request event: 6
  • Fork event: 6

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 674
  • Total Committers: 7
  • Avg Commits per committer: 96.286
  • Development Distribution Score (DDS): 0.18
Past Year
  • Commits: 100
  • Committers: 4
  • Avg Commits per committer: 25.0
  • Development Distribution Score (DDS): 0.18
Top Committers
Name Email Commits
Lambda Moses d****2@c****u 553
alikhuseynov 5****v 78
alikhuseynov a****v@g****m 26
J Wokaty j****y@s****u 10
Lior Pachter l****r@g****m 3
Eva C. Freckmann e****n@y****m 3
mingqizh z****6@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 70
  • Total pull requests: 8
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 25 days
  • Total issue authors: 15
  • Total pull request authors: 6
  • Average comments per issue: 2.0
  • Average comments per pull request: 10.63
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 24
  • Pull requests: 5
  • Average time to close issues: 7 days
  • Average time to close pull requests: 3 days
  • Issue authors: 11
  • Pull request authors: 3
  • Average comments per issue: 1.96
  • Average comments per pull request: 0.2
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • lambdamoses (42)
  • alikhuseynov (8)
  • aasingh2 (4)
  • heziqing (2)
  • julienmortier (1)
  • LTLA (1)
  • rcastelo (1)
  • jfcarre (1)
  • cathalgking (1)
  • rsbivand (1)
  • Elena983 (1)
  • swbioinf (1)
  • junikken (1)
  • huiyijiangling (1)
  • dpcook (1)
Pull Request Authors
  • efreckmann (3)
  • alikhuseynov (2)
  • newmana (2)
  • mariiabilous (1)
  • andrewGhazi (1)
  • mingqizh (1)
Top Labels
Issue Labels
enhancement (20) intermediate (16) advanced (6) bug (4) documentation (3) beginner (3) refactor (2) optimization (2)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • bioconductor 12,933 total
  • Total dependent packages: 1
  • Total dependent repositories: 0
  • Total versions: 12
  • Total maintainers: 1
bioconductor.org: SpatialFeatureExperiment

Integrating SpatialExperiment with Simple Features in sf

  • Versions: 12
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 12,933 Total
Rankings
Dependent repos count: 0.0%
Stargazers count: 6.5%
Forks count: 14.4%
Dependent packages count: 19.9%
Average: 25.4%
Downloads: 86.2%
Maintainers (1)
Last synced: 7 months ago

Dependencies

.github/workflows/test-coverage.yaml actions
  • actions/checkout v2 composite
  • grimbough/bioc-actions/setup-bioc v1 composite
  • r-lib/actions/setup-r-dependencies v2 composite
DESCRIPTION cran
  • R >= 4.2.0 depends
  • BiocGenerics * imports
  • BiocParallel * imports
  • S4Vectors * imports
  • SingleCellExperiment * imports
  • SpatialExperiment * imports
  • SummarizedExperiment * imports
  • methods * imports
  • rjson * imports
  • sf * imports
  • spdep >= 1.1 imports
  • stats * imports
  • utils * imports
  • BiocStyle * suggests
  • DropletUtils * suggests
  • Matrix * suggests
  • SFEData * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat >= 3.0.0 suggests
.github/workflows/pkgdown.yaml actions
  • JamesIves/github-pages-deploy-action 4.1.4 composite
  • actions/checkout v2 composite
  • grimbough/bioc-actions/setup-bioc v1 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite