| Type: | Package | 
| Title: | Identifying Significant Node Scores using Network Diffusion Algorithm | 
| Version: | 1.0.2 | 
| Description: | Designed for network analysis, leveraging the personalized PageRank algorithm to calculate node scores in a given graph. This innovative approach allows users to uncover the importance of nodes based on a customized perspective, making it particularly useful in fields like bioinformatics, social network analysis, and more. | 
| License: | GPL (≥ 3) | 
| Encoding: | UTF-8 | 
| RoxygenNote: | 7.2.3 | 
| Depends: | igraph, assertthat | 
| Imports: | MASS, parallel | 
| NeedsCompilation: | no | 
| Packaged: | 2023-11-21 18:14:58 UTC; faren | 
| Author: | Farzaneh Firoozbakht [aut, cre, cph] | 
| Maintainer: | Farzaneh Firoozbakht <faren.firoozbakht@gmail.com> | 
| Repository: | CRAN | 
| Date/Publication: | 2023-11-22 09:20:15 UTC | 
Calculation of diffusion score for each node
Description
Calculation of diffusion score for each node
Usage
actual_score(graph, initial.score, damping = 0.7)
Arguments
| graph | an igraph object with the length of N | 
| initial.score | a named vector of node preferences of length N served as the initial values for diffusion algorithm. | 
| damping | The damping factor of the diffusion algorithm. | 
Details
This function calculates the diffusion score for each node using the personalized page rank algorithm.
Value
a vector of diffusion scores.
Examples
graph = graph_generation(n.nodes = 10, prob.connection = 0.5)
initial_score = c(rep(0,5),0.2, 0.3, 0, 0, 0.5)
names(initial_score) = igraph::V(graph)
Actual_score = actual_score(graph = graph, initial.score = initial_score, damping = 0.7)
dummy graph generation
Description
dummy graph generation
Usage
graph_generation(n.nodes = 10, prob.connection = 0.5)
Arguments
| n.nodes | number of nodes | 
| prob.connection | node connection probability (default=0.5) | 
Details
Generate a random graph
Value
igraph object
Examples
graph = graph_generation(n.nodes = 10, prob.connection = 0.5)
initial_score = c(rep(0,5),0.2, 0.3, 0, 0, 0.5)
names(initial_score) = igraph::V(graph)
Correction for multiple testing
Description
Correction for multiple testing
Usage
multiple_testing_correction(p.values, method = "BH")
Arguments
| p.values | a vector of p.values | 
| method | method of correction: c( | 
Details
Correction for multiple testing
Value
vector of q-values
Examples
graph = graph_generation(n.nodes = 10, prob.connection = 0.5)
initial_score = c(rep(0,5),0.2, 0.3, 0, 0, 0.5)
names(initial_score) = igraph::V(graph)
Actual_score = actual_score(graph = graph, initial.score = initial_score, damping = 0.7)
Null_score = null_score(graph = graph, initial.score = initial_score, damping = 0.7, N.repeat = 10)
pvalue = pval(actual.scores = Actual_score, null.scores = Null_score, method = "non_parametric")
adj_nodes = multiple_testing_correction(pvalue)
Calculation of diffusion null scores for each node
Description
Calculation of diffusion null scores for each node
Usage
null_score(graph, initial.score, damping = 0.7, N.repeat = 10, n.cores = 1)
Arguments
| graph | an igraph object with the length of N | 
| initial.score | a named vector of node preferences of length N served as the initial values for diffusion algorithm. | 
| damping | The damping factor of the diffusion algorithm. | 
| N.repeat | number of permutation repeats of null scores. | 
| n.cores | number of cores for parallel processing. | 
Details
This function calculates the null diffusion score for each node using the personalized page rank algorithm.
The initial values are obtained by permuting the given initial.score
Value
a matrix of null diffusion scores (N.repeat—BY—number_of_nodes).
Examples
graph = graph_generation(n.nodes = 10, prob.connection = 0.5)
initial_score = c(rep(0,5),0.2, 0.3, 0, 0, 0.5)
names(initial_score) = igraph::V(graph)
Null = null_score(graph, initial_score)
Calculation of p-values for each score with respect to the null.
Description
Calculation of p-values for each score with respect to the null.
Usage
pval(actual.scores, null.scores, method = "exponential")
Arguments
| actual.scores | a vector including actual scores with the length of number of nodes (N_nodes). | 
| null.scores | a matrix of null scores with the dimension of N_nodes x N_repeat | 
| method | statistical test method: c( | 
Details
Calculate the p-value for each node based on the actual and null diffusion scores.
Value
vector of p-values
Examples
graph = graph_generation(n.nodes = 10, prob.connection = 0.5)
initial_score = c(rep(0,5),0.2, 0.3, 0, 0, 0.5)
names(initial_score) = igraph::V(graph)
Actual_score = actual_score(graph = graph, initial.score = initial_score, damping = 0.7)
Null_score = null_score(graph = graph, initial.score = initial_score, damping = 0.7, N.repeat = 10)
pvalue = pval(actual.scores = Actual_score, null.scores = Null_score, method = "exponential")