tool.subgraph.search {Mergeomics} | R Documentation |
tool.subgraph.search
looks for both upstream and downstream
neighborhoods of given seed node list for a given depth, gets the directed
edge information among seed nodes and their neighbors, obtains statistics
(degrees and strengths) for seed nodes.
tool.subgraph.search(graph, seeds, depth, direction)
graph |
a datalist including following components: nodes: N-element array of node names tails: K-element array of node indices heads: K-element array of node indices weights: K-element array of edge weights tail2edge: N-element list of adjacent edge indices head2edge: N-element list of adjacent edge indices outstats: N-row data frame of out-degree node statistics instats: N-row data frame of in-degree node statistics stats: N-row data frame of node statistics |
seeds |
seed nodes' indices |
depth |
the maximum number of links to connect neighbors |
direction |
sets the directionality: use a negative value for dowstream, positive for upstream or zero for undirected |
a data list including seed nodes neighborhood information with following components:
RANK |
indices of neighboring nodes (including seeds) |
LEVEL |
number of edges away from seed |
STRENG |
sum of adjacent edge weights within neighborhood |
DEGREE |
number of adjacent edges within neighborhood |
Ville-Petteri Makinen
data(job_kda_analyze) depth <- 1 direction <- 0 ## Take one or multiple center nodes (seeds) to search the neighborhoods: ## e.g. take the first node in the graph as the seed, find its neighborhood: center.node = job.kda$graph$nodes[1] ## Convert center node (seed) names to indices: nodes <- job.kda$graph$nodes ranks <- match(center.node, nodes) ranks <- ranks[which(ranks > 0)] ## we already know that rank is 1, since we took the first node in the graph ## as an example: ranks <- as.integer(ranks) ## Find neighbors. res <- tool.subgraph.search(job.kda$graph, ranks, depth, direction)