R: Wrapper for glasso method

run_glasso {dnapath} | R Documentation

## Wrapper for glasso method

### Description

Conducts co-expression analysis using glasso (Friedman et al. 2018). Uses the implementation from the `huge` package (Jiang et al. 2019). Can be used for the `network_inference` argument in `dnapath`.

### Usage

    run_glasso(
      x,
      method = c("glasso", "mb", "ct"),
      criterion = c("ric", "stars"),
      verbose = FALSE,
      weights = NULL,
      ...
    )

### Arguments

`x` | A n by p matrix of gene expression data (n samples and p genes).
`method` | Argument is passed into `huge`.
`criterion` | Argument is passed into `huge.select`.
`verbose` | Argument is passed into `huge` and `huge.select`
`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.
`...` | Additional arguments are ignored.

### Value

A p by p matrix of association scores.

### References

Friedman J, Hastie T, Tibshirani R (2018). glasso: Graphical Lasso: Estimation of Gaussian Graphical Models. R package version 1.10.

Jiang H, Fei X, Liu H, Roeder K, Lafferty J, Wasserman L, Li X, Zhao T (2019). huge: High-Dimensional Undirected Graph Estimation. R package version 1.3.3, https://CRAN.R-project.org/package=huge.

### See Also

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

### Examples

    data(meso)
    data(p53_pathways)

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

    # Use this method to perform differential network analysis.
    # The parameters in run_glasso() can be adjusted using the ... argument.
    # For example, the 'criterion' 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_glasso,
                       criterion = "ric")
    summary(results)

    # The group-specific association matrices can be extracted using get_networks().
    nw_list <- get_networks(results) # 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) # 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]