R: Wrapper for degree-weighted lasso method

run_dwlasso {dnapath} | R Documentation

## Wrapper for degree-weighted lasso method

### Description

Conducts co-expression analysis using DWLasso (Sulaimanov et al. 2018). Uses the implementation from the `DWLasso` package (Sulaimanov et al. 2017). Can be used for the `network_inference` argument in `dnapath`.

### Usage

    run_dwlasso(x, weights = NULL, lambda1 = 0.4, lambda2 = 2, ...)

### Arguments

`x` | A n by p matrix of gene expression data (n samples and p genes).
`weights` | An optional vector of weights. This is used by `dnapath()` to apply the probabilistic group labels to each observation when estimating the group-specific network.
`lambda1` | A penalty parameter that controls degree sparsity of the inferred network. See `DWLasso` for details.
`lambda2` | A penalty parameter that controls overall sparsity of the inferred network. See `DWLasso` for details.
`...` | Additional arguments are ignored.

### Value

A p by p matrix of association scores.

### References

Sulaimanov N, Kumar S, Burdet F, Ibberson M, Pagni M, Koeppl H (2018). “Inferring Gene Expression Networks with Hubs using a Degree Weighted Lasso Approach.” Bioinformatics, 35(6), 987–994.

Sulaimanov N, Kumar S, Koeppl H (2017). DWLasso: Degree Weighted Lasso. R package version 1.1, https://CRAN.R-project.org/package=DWLasso.

### See Also

`run_aracne`, `run_bc3net`, `run_c3net`, `run_clr`, `run_corr`, `run_genie3`, `run_glasso`, `run_mrnet`, `run_pcor`, and `run_silencer`

### Examples

    data(meso)
    data(p53_pathways)

    # To create a short example, we subset on two pathways from the p53 pathway list,
    # and will only run 1 permutation for significance testing.
    pathway_list <- p53_pathways[c(8, 13)]
    n_perm <- 1

    # Use this method to perform differential network analysis.
    # The parameters in run_dwlasso() can be adjusted using the ... argument.
    # For example, the 'lambda1' parameter can be specified as shown here.
    results <- dnapath(x = meso$gene_expression,
                       pathway_list = pathway_list,
                       group_labels = meso$groups,
                       n_perm = n_perm,
                       network_inference = run_dwlasso,
                       lambda1 = 0.5)
    summary(results)

    # The group-specific association matrices can be extracted using get_networks().
    nw_list <- get_networks(results[[1]]) # Get networks for pathway 1.

    # nw_list has length 2 and contains the inferred networks for the two groups.
    # The gene names are the Entrezgene IDs from the original expression dataset.
    # Renaming the genes in the dnapath results to rename those in the networks.
    # NOTE: The temporary directory, tempdir(), is used in this example. In practice,
    #       this argument can be removed or changed to an existing directory
    results <- rename_genes(results, to = "symbol", species = "human",
                            dir_save = tempdir())
    nw_list <- get_networks(results[[1]]) # The genes (columns) will have new names.

    # (Optional) Plot the network using SeqNet package (based on igraph plotting).
    # First rename entrezgene IDs into gene symbols.
    SeqNet::plot_network(nw_list[[1]])

[Package dnapath version 0.7.4 Index]