ABSTRACT: Overview
--------
This submission contains networks and code used for the s-core+ decomposition
analyses presented in the manuscript "Comparative analysis of weighted gene
co-expression networks in human and mouse", published in PLoS One, 2017.
An example of how to use the perl script `s-core_plus.pl` is given below,
under `s-core+`. In short:
`perl s-core_plus.pl `
It should be noted that the code is not optimized for speed or memory
efficiency. It is provided to make the s-core / s-core+ method more
transparent to the community.
Weighted topological overlap (wTO) networks
-------------------------------------------
There are 4 networks, 2 from mouse data, and 2 from human data. And one
denoted by `all`, and one by `cns`, for both species. `all` means that
the network is generated comparing gene-expression profiles across all
tissue types in the data. `cns` means that only the central nervous
system (CNS) and brain tissue types are included in the network.
The `all` networks are a lot larger than the `cns` networks, since they
contain >10,000 nodes, while the `cns` only contain transcription factors,
and thus around 1,000 nodes.
The networks are very dense undirected, weighted networks given as link
lists. The naming convention is:
`hs`: Homo Sapiens (Human)
`mm`: Mus Musculus (Mouse)
`all`: Network constructed from all tissue types
`cns`: Network constructed from brain and CNS tissue types
`cutX`: Cutoff value (`cut4`: cutoff = 0.4, `cut3`: cutoff = 0.3)
s-core+
-------
The s-core method works by peeling off peripheral nodes in an undirected,
weighted network. For unweighted networks, the s-core is equal to the k-core
network decomposition method.
s-core eventually peels the network down to an innermost core, and s-core+
commences. s-core+ works by removing the weakest links in the network until
a new, stable innermost s-core can be found.
In general, s-core is a relatively quick method, while s-core+ is slow.
For instance, `s-core_plus.pl` decomposes the entire `all` networks into its
s-cores in <30 minutes, while s-core+ takes a few days to complete.
The `cns` networks are quick to run, both for s-core and s-core+, due to
their smaller size and denseness.
To, for instance, obtain the results for the human `cns` network, run:
`perl s-core_plus.pl hs_wTO_cns_cut4.txt results.txt`
The first argument of `s-core_plus.pl` is the .
The second argument of `s-core_plus.pl` is the .
The output is in the shape of 4 tab-delimited columns:
`#Node HighestCore StrengthThreshold CoreSize`
`Node`: Node ID (gene name)
`HighestCore`: The innermost core `Node` is a member of
`StrengthThreshold`: The strength threshold value for the given s-core(+)
`CoreSize`: Number of nodes in core number `HighestCore`
If only the s-core results are needed, and not the s-core+ results, adjust
the parameter `$networkSizeForFallback` so that it is smaller than the
innermost s-core (e.g. by setting it to 1).
There is also an option for verbosity. Set `$ifVerbose = "yes"` if you want
insight into the progress for every s-core iteration.