graphSpatialFDR: Control the spatial FDR

View source: R/graphSpatialFDR.R

graphSpatialFDRR Documentation

Control the spatial FDR

Description

Borrowing heavily from cydar which corrects for multiple-testing using a weighting scheme based on the volumetric overlap over hyperspheres. In the instance of graph neighbourhoods this weighting scheme can use graph connectivity or incorpate different within-neighbourhood distances for the weighted FDR calculation.

Arguments

x.nhoods

A list of vertices and the constituent vertices of their neighbourhood

graph

The kNN graph used to define the neighbourhoods

pvalues

A vector of p-values calculated from a GLM or other appropriate statistical test for differential neighbourhood abundance

k

A numeric integer that determines the kth nearest neighbour distance to use for the weighted FDR. Only applicaple when using weighting="k-distance".

weighting

A string scalar defining which weighting scheme to use. Choices are: max, k-distance, neighbour-distance or graph-overlap.

reduced.dimensions

(optional) A matrix of cells X reduced dimensions used to calculate the kNN graph. Only necessary if this function is being used outside of testNhoods where the Milo object is not available

distances

(optional) A matrix of cell-to-cell distances or a list of distance matrices, 1 per neighbourhood. Only necessary if this function is being used outside of testNhoods where the Milo object is not available.

indices

(optional) A list of neighbourhood index vertices in the same order as the input neighbourhoods. Only used for the k-distance weighting.

Details

Each neighbourhood is weighted according to the weighting scheme defined. k-distance uses the distance to the kth nearest neighbour of the index vertex, neighbour-distance uses the average within-neighbourhood Euclidean distance in reduced dimensional space, max uses the largest within-neighbourhood distance from the index vertex, and graph-overlap uses the total number of cells overlapping between neighborhoods (distance-independent measure). The frequency-weighted version of the BH method is then applied to the p-values, as in cydar.

Value

A vector of adjusted p-values

Author(s)

Adapted by Mike Morgan, original function by Aaron Lun

Examples

NULL

MarioniLab/miloR documentation built on Oct. 18, 2024, 6:04 p.m.