diff --git a/docs/prms/allpairs.rst b/docs/prms/allpairs.rst index 853d736d..50254fcb 100644 --- a/docs/prms/allpairs.rst +++ b/docs/prms/allpairs.rst @@ -10,3 +10,21 @@ every single target with respect to a cartesian product. All Pairs does not take any arguments. Its source code is at https://github.com/Reed-CompBio/all-pairs-shortest-paths licensed under MIT. + +*************** + Dataset Usage +*************** + +All Pairs Shortest Paths uses ``sources``, ``targets``, and edge +weights. All Pairs Shortest Paths uses edge direction information. +However, All Pairs Shortest Paths always returns an undirected +subnetwork. + +************************ + Implementation Details +************************ + +Internally, All Pairs Shortest Paths only accepts fully undirected or +directed graphs. SPRAS will automatically convert edges to directed +edges as necessary. For more information, see the section on +:ref:`algorithm directionality `. diff --git a/docs/prms/bowtiebuilder.rst b/docs/prms/bowtiebuilder.rst index b04e2c19..e73c17e4 100644 --- a/docs/prms/bowtiebuilder.rst +++ b/docs/prms/bowtiebuilder.rst @@ -11,3 +11,19 @@ BowTieBuilder does not take in any arguments. - Repository: https://github.com/Reed-CompBio/BowTieBuilder-Algorithm - Paper: https://doi.org/10.1186/1752-0509-3-67 + +*************** + Dataset Usage +*************** + +BowTieBuilder uses ``sources``, ``targets``, edge weights, and edge +direction information. + +************************ + Implementation Details +************************ + +BowTieBuilder's internal implementation only takes in directed +interactomes. SPRAS will automatically convert edges to directed edges +as necessary. For more information, see the section on :ref:`algorithm +directionality `. diff --git a/docs/prms/domino.rst b/docs/prms/domino.rst index e76a5278..aadda6cf 100644 --- a/docs/prms/domino.rst +++ b/docs/prms/domino.rst @@ -14,6 +14,14 @@ DOMINO has two optional parameters: - module_threshold: the p-value threshold for considering a putative module as final module +*************** + Dataset Usage +*************** + +DOMINO requires the `active` column to be set. DOMINO does not consider +edge weights, nor graph directionality: directed edges are treated as +undirected edges, and DOMINO returns an undirected subnetwork. + ################# Wrapper Details ################# diff --git a/docs/prms/meo.rst b/docs/prms/meo.rst index 72e67331..fa41b476 100644 --- a/docs/prms/meo.rst +++ b/docs/prms/meo.rst @@ -20,3 +20,19 @@ MEO takes in three optional parameters: be true. - rand_restarts: the number (int) of random restarts to use. + +*************** + Dataset Usage +*************** + +MEO uses ``sources``, ``targets``, and edge weights. MEO also uses edge +direction information, and the output sub-network is directed. + +************************ + Implementation Details +************************ + +Internally, MEO only accepts directed interactomes. SPRAS will +automatically convert edges to directed edges as necessary. For more +information, see the section on :ref:`algorithm directionality +`. diff --git a/docs/prms/mincostflow.rst b/docs/prms/mincostflow.rst index 6f02dd90..b2fb7728 100644 --- a/docs/prms/mincostflow.rst +++ b/docs/prms/mincostflow.rst @@ -13,9 +13,24 @@ MinCostFlow takes two optional parameters: - flow: (int) the amount of flow going through the graph - capacity: the (float) max capacity for edges -**************** - External links -**************** +*************** + Dataset Usage +*************** + +MinCostFlow uses the input's ``sources``, ``targets``, and edge weights. +MinCostFlow also edge direction information. + +************************ + Implementation Details +************************ + +MinCostFlow's internal implementation only accepts directed +interactomes. SPRAS will automatically convert edges to directed edges +as necessary. For more information, see the section on :ref:`algorithm +directionality `. + +External links +============== - Repository: https://github.com/gitter-lab/min-cost-flow/ - MinCostFlow implementation paper: diff --git a/docs/prms/oi1.rst b/docs/prms/oi1.rst index 11176615..22bb9d8b 100644 --- a/docs/prms/oi1.rst +++ b/docs/prms/oi1.rst @@ -51,3 +51,15 @@ OI1 takes some optional arguments: terminal nodes (i.e. nodes without prizes) - ``file``: connect the dummy node to a specific list of nodes provided in a file + +*************** + Dataset Usage +*************** + +OmicsIntegrator1 prefers ``prize``s, but will take the union of +``sources`` and ``targets`` and set their 'prize' to 1 if ``prize`` is +not specified. If any ``dummy_nodes`` are specified, these are passed to +OmicsIntegrator1 and can have their behavior configured with +``dummy_mode``. + +OmicsIntegrator1 uses edge direction information. diff --git a/docs/prms/oi2.rst b/docs/prms/oi2.rst index 63f68d4e..a656386a 100644 --- a/docs/prms/oi2.rst +++ b/docs/prms/oi2.rst @@ -34,3 +34,14 @@ OI2 takes a few optional arguments: - "all" = connect to all nodes in the interactome. - seed: The random seed to use for this run. + +*************** + Dataset Usage +*************** + +OmicsIntegrator2 prefers ``prize``s, but will take the union of +``sources`` and ``targets`` and set their 'prize' to 1 if ``prize`` is +not specified. + +OmicsIntegrator2 does not use edge direction information: all edges are +treated as undirected, and the output sub-network is undirected. diff --git a/docs/prms/pathlinker.rst b/docs/prms/pathlinker.rst index b3b01fad..a7dfd13e 100644 --- a/docs/prms/pathlinker.rst +++ b/docs/prms/pathlinker.rst @@ -10,9 +10,24 @@ PathLinker takes one optional argument: - k: The number of paths to find (*k* shortest paths). -**************** - External links -**************** +*************** + Dataset Usage +*************** + +PathLinker uses ``sources``, ``targets``, and edge weights. PathLinker +uses edge direction information. + +************************ + Implementation Details +************************ + +Internally, PathLinker only takes in directed graphs. SPRAS will +automatically convert edges to directed edges as necessary. For more +information, see the section on :ref:`algorithm directionality +`. + +External links +============== - Source code: https://github.com/Murali-group/PathLinker - Associated papers: https://doi.org/10.1038/npjsba.2016.2 and diff --git a/docs/prms/prms.rst b/docs/prms/prms.rst index 9c961828..8fd5b03b 100644 --- a/docs/prms/prms.rst +++ b/docs/prms/prms.rst @@ -10,6 +10,36 @@ also supports edge orientation algorithms (e.g. MEO) and active module identifiers/disease module mining methods (e.g. DOMINO). +This is the list of SPRAS's supported pathway reconstruction methods. +Each subpage comes with a description of the algorithm, its source code +and associated paper (if one exists), and its 'dataset usage,' or parts +of a dataset that it will utilize when running pathway reconstruction. +Implementation details are also provided, for users wondering about any +important decisions that differentiate the SPRAS-wrapped version from +the original algorithm. + +.. _directionality: + +************************ + Directionality Details +************************ + +Some algorithms only accept fully undirected or fully directed +interactomes as input. For input data, SPRAS will try to preserve as +much directionality information as possible. Mixed interactomes are also +accepted in SPRAS. + +SPRAS will automatically convert the input interactome to the desired +directionality by the algorithm: this can mean that, for some +algorithms, interactome direction may be ignored. Other algorithms will +consider interactome directionality, whether by accepting mixed +interactomes directly, or converting undirected edges into directed +edges. + +For converting undirected edges to directed edges, unless otherwise +specified, undirected edges will be converted into two directed edges +pointing opposite of one another. + .. toctree:: :maxdepth: 1 :caption: All Pairs diff --git a/docs/prms/responsenet.rst b/docs/prms/responsenet.rst index b7056afa..9c431ab3 100644 --- a/docs/prms/responsenet.rst +++ b/docs/prms/responsenet.rst @@ -12,3 +12,19 @@ ResponseNet takes one optional parameter: - gamma: (int) controls the size of the output graph: more gamma means more 'flow' gets passed along starting from the sources. + +*************** + Dataset Usage +*************** + +ResponseNet uses ``sources``, ``targets``, and edge weights. ResponseNet +uses edge direction information, but returns an undirected subnetwork. + +************************ + Implementation Details +************************ + +Internally, ResponseNet only takes in directed graphs. SPRAS will +automatically convert edges to directed edges as necessary. For more +information, see the section on :ref:`algorithm directionality +`. diff --git a/docs/prms/rwr.rst b/docs/prms/rwr.rst index 583dc588..b64234e7 100644 --- a/docs/prms/rwr.rst +++ b/docs/prms/rwr.rst @@ -17,3 +17,23 @@ targets, see STRWR. RWR takes in two parameters: restarting. RWR is implemented at https://github.com/reed-compbio/rwr. + +*************** + Dataset Usage +*************** + +RWR considers the union of ``sources`` and ``targets`` as the input +active nodes. Input interactome directionality is considered, and the +output subnetwork is also directed. + +************************ + Implementation Details +************************ + +RWR returns a ranked list of nodes: SPRAS returns the induced subgraph +from the number of nodes corresponding to the user-specified +``threshold``. + +Internally, RWR only takes in directed graphs. SPRAS will automatically +convert edges to directed edges as necessary. For more information, see +the section on :ref:`algorithm directionality `. diff --git a/docs/prms/strwr.rst b/docs/prms/strwr.rst index a504cf66..9648ab6c 100644 --- a/docs/prms/strwr.rst +++ b/docs/prms/strwr.rst @@ -2,9 +2,10 @@ ST_RWR ######## -ST_RWR, or random walk with restarts, is a source and target dependent -pathway reconstruction algorithm that performs PathRank on the input -interactome, using its edge weights, prizes, sources, and targets. +ST_RWR, or source-target random walk with restarts, is a source and +target dependent pathway reconstruction algorithm that performs PathRank +on the input interactome, using its edge weights, prizes, sources, and +targets. For a random walk with restarts implementation that does not use sources and targets, see RWR. @@ -17,3 +18,23 @@ and targets, see RWR. restarting. ST_RWR is implemented at https://github.com/reed-compbio/rwr. + +*************** + Dataset Usage +*************** + +ST_RWR considers ``sources`` and ``targets``. ST_RWR considers +interactome directionality, and the output subnetwork is also directed. + +************************ + Implementation Details +************************ + +ST_RWR returns a ranked list of nodes: SPRAS returns the induced +subgraph from the number of nodes corresponding to the user-specified +``threshold``. + +Internally, ST_RWR only takes in directed graphs. SPRAS will +automatically convert edges to directed edges as necessary. For more +information, see the section on :ref:`algorithm directionality +`.