buildFromAdjacency: Build a graph from an input adjacency matrix

View source: R/buildFromAdjacency.R

buildFromAdjacencyR Documentation

Build a graph from an input adjacency matrix


Construct a kNN-graph from an input adjacency matrix - either binary or distances between NNs.



An n X n matrix of single-cells, where values represent edges between cells; 0 values are taken to mean no edge between cells. If the matrix is not binary, then it is assumed the values are distances; 0 retain the same meaning. This behaviour can be toggled using is.binary=TRUE.


(optional) Scalar value that represents the number of nearest neighbours in the original graph. This can also be inferred directly from the adjacency matrix x.


Logical scalar indicating if the input matrix is binary or not.


This function will take a matrix as input and construct the kNN graph that it describes. If the matrix is not symmetric then the graph is assumed to be directed, whereas if the matrix is not binary, i.e. all 0's and 1's then the input values are taken to be distances between graph vertices; 0 values are assumed to represent a lack of edge between vertices.


A Milo with the graph slot populated.


Mike Morgan


r <- 1000
c <- 1000
k <- 35
m <- floor(matrix(runif(r*c), r, c))
for(i in seq_along(1:r)){
    m[i, sample(1:c, size=k)] <- 1

milo <- buildFromAdjacency(m)

MikeDMorgan/miloR documentation built on Aug. 7, 2022, 8:21 a.m.