TestOutliers | R Documentation |
Test if any cells are too far from their cluster centers
TestOutliers(
fsom,
madAllowed = 4,
fsomReference = NULL,
plotFile = NULL,
channels = NULL
)
fsom |
FlowSOM object |
madAllowed |
Number of median absolute deviations allowed. Default = 4. |
fsomReference |
FlowSOM object to use as reference. If NULL (default), the original fsom object is used. |
plotFile |
If |
channels |
If channels are given, the number of outliers in the original space for those channels will be calculated and added to the final results table. |
For every cluster, the distance from the cells to the cluster centers is
used to label cells which deviate too far as outliers. The threshold is
chosen as the median distance + madAllowed
times the median absolute
deviation of the distances.
An outlier report
FlowSOMSubset
if you want to get a subset of the
current data instead of a new dataset
# Build FlowSom result
fileName <- system.file("extdata", "68983.fcs", package = "FlowSOM")
ff <- flowCore::read.FCS(fileName)
flowSOM.res <- FlowSOM(ff,
compensate = TRUE, transform = TRUE, scale = TRUE,
colsToUse = c(9, 12, 14:18),
nClus = 10)
# Map new data
outlier_report <- TestOutliers(flowSOM.res,
madAllowed = 5,
channels = flowSOM.res$map$colsUsed)
# Number of cells which is an outlier for x channels
outlier_on_multiple_markers <- table(rowSums(outlier_report$channel_specific != 0))
outlier_type <- paste(GetClusters(flowSOM.res),
apply(outlier_report$channel_specific, 1, paste0, collapse = ""))
outlier_counts <- table(grep(" .*1.*", outlier_type, value = TRUE))
outliers_of_interest <- names(which(outlier_counts > 10))
outlier_boolean <- outlier_type %in% outliers_of_interest
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.