SegmentedCells-class {spicyR} | R Documentation

## The SegmentedCells class

### Description

The SegmentedCells S4 class is for storing data from segmented imaging cytometry and spatial omics data. It extends DataFrame and defines methods that take advantage of DataFrame nesting to represent elements of cell-based experiments with spatial orientation that are commonly encountered. This object is able to store information on a cell's spatial location, cellType, morphology, intensity of gene/protein markers as well as image level phenotype information.

### Usage

    SegmentedCells(
      cellData,
      cellProfiler = FALSE,
      spatialCoords = c("x", "y"),
      cellTypeString = "cellType",
      intensityString = "intensity_",
      morphologyString = "morphology_",
      phenotypeString = "phenotype_",
      cellIDString = "cellID",
      imageCellIDString = "imageCellID",
      imageIDString = "imageID"
    )

### Arguments

`cellData` | A data frame that contains at least the columns x and y giving the location coordinates of each cell.
`cellProfiler` | A logical indicating that cellData is in a format similar to what cellProfiler outputs.
`spatialCoords` | The column names corresponding to spatial coordinates. eg. x, y, z...
`cellTypeString` | The name of the column that contains cell type calls.
`intensityString` | A string which can be used to identify the columns which contain marker intensities. (This needs to be extended to take the column names themselves.)
`morphologyString` | A string which can be used to identify the columns which contains morphology information.
`phenotypeString` | A string which can be used to identify the columns which contains phenotype information.
`cellIDString` | The column name for cellID.
`imageCellIDString` | The column name for imageCellID.
`imageIDString` | The column name for imageIDString.

### Value

A SegmentedCells object

### Examples

    ### Something that resembles cellProfiler data

    set.seed(51773)

    n = 10

    cells <- data.frame(row.names = seq_len(n))
    cells$ObjectNumber <- seq_len(n)
    cells$ImageNumber <- rep(seq_len(2),c(n/2,n/2))
    cells$AreaShape_Center_X <- runif(n)
    cells$AreaShape_Center_Y <- runif(n)
    cells$AreaShape_round <- rexp(n)
    cells$AreaShape_diameter <- rexp(n, 2)
    cells$Intensity_Mean_CD8 <- rexp(n, 10)
    cells$Intensity_Mean_CD4 <- rexp(n, 10)

    cellExp <- SegmentedCells(cells, cellProfiler = TRUE)

    ### Cluster cell types
    intensities <- cellMarks(cellExp)
    kM <- kmeans(intensities,2)
    cellType(cellExp) <- paste('cluster',kM$cluster, sep = '')
    cellSummary(cellExp)

[Package spicyR version 1.0.1 Index]