R/RWRandMatrices.R
Random.Walk.Restart.Multiplex.Rd
Random.Walk.Restart.Multiplex
is a function to perform a Random Walk
with Restart on a Multiplex network (on a Multiplex
object). See
more details about the algorithm below.
Random.Walk.Restart.Multiplex(...) # S3 method for default Random.Walk.Restart.Multiplex( x, MultiplexObject, Seeds, r = 0.7, tau, MeanType = "Geometric", DispResults = "TopScores", ... )
... | Further arguments passed to |
---|---|
x | An object of the |
MultiplexObject | A |
Seeds | A vector containing the names of the seeds for the Random Walk algorithm. See more details below. |
r | A numeric value between 0 and 1. It sets the probability of restarting to a seed node after each step. See more details below. |
tau | A vector containing the probability of restart on the seeds of the different layers (layers weights). It must have the same length than the number of layers of the multpiplex network. The sum of its components divided by the number of layers must be 1. See more details below. |
MeanType | The user can choose one of the following options: c("Geometric","Arithmetic","Sum"). These options represent the different way to combine the RWR score for the same node in different layers. By default and recommended Geometric (Geometric Mean.). Arithmetic is the arithmetic mean and sum just sum all the scores for the same node across the different layers. |
DispResults | The user can choose one of the following options:
c("TopScores","Alphabetic"). These options represent the way the RWR results
would be presented. By default, and recommended, the nodes would be ordered
by score. This option is also required to properly run the
|
A RWRM_Results
object. It contains a sorted ranking of all
the nodes of the multiplex network, except the seeds, along with their score.
In addition, it contains in a different field the nodes used as seeds.
Random Walk with Restart simulates an imaginary particle that starts on a seed(s) node(s) and follows randomly the edges of a network. At each step, there is a restart probability, r, meaning that the particle comes back to the seed(s). The extension to multiplex networks allows the particle to explore different monoplex networks (layers). At each step, the particle can also jump to the same node in a different layer.
Seeds
: A vector containing the name of the different seed
node(s). It's mandatory to provide at least one seed. The seed(s) node(s)
should belong to any of the layers. The length of this vector should be
smaller than the total number of nodes in the multiplex network.
r
: A numeric value representing the restart probability on the
seeds for the random walker. It must be between 0 and 1. It is set by default
to 0.7, which is the most common value in this kind of approaches. It means
that, at each step, the walker has a 70% of probability of coming back to
one of the seeds.
tau
: A numeric vector containing the probability of restarting
in the nodes of the different layers of the multiplex. In the example below,
we define the node 1 as the seed node. However, we can find this node in both
layers. Therefore, the walker can restart in any of these seed nodes. It is
a way to give different relevance (weight) to the different layers.
create.multiplex,
compute.adjacency.matrix, normalize.multiplex.adjacency,
isRWRM_Results, Random.Walk.Restart.MultiplexHet
Alberto Valdeolivas Urbelz alvaldeolivas@gmail.com
m1 <- igraph::graph(c(1,2,1,3,2,3), directed = FALSE) m2 <- igraph::graph(c(1,3,2,3,3,4,1,4), directed = FALSE) multiObject <- create.multiplex(list(m1=m1,m2=m2)) AdjMatrix <- compute.adjacency.matrix(multiObject) AdjMatrixNorm <- normalize.multiplex.adjacency(AdjMatrix) SeedNodes <- c(1) Random.Walk.Restart.Multiplex(AdjMatrixNorm,multiObject,SeedNodes)#> Top 10 ranked Nodes: #> NodeNames Score #> 1 3 0.04934363 #> 2 2 0.01963822 #> 3 4 0.01421403 #> #> Seed Nodes used: #> [1] "1"