Learn R Programming

DWLasso (version 1.1)

weightEstim: Estimating weights from the degree of the inferred network

Description

This function estimates weigths from the degree of the inferred network using iterative procedure. This function is called from the main functon DWLasso.R

Usage

weightEstim(dat, lam=0.4, a=1, tol=1e-6)

Arguments

dat

An input matrix. The columns represent variables and the rows indicate observations.

lam

A penalty parameter that controls degree sparsity of the inferred network

a

A parameter of the update equation that controls the convergence of weights

tol

Tolerance

Value

w.dat

Estimated weight vector from the last iteration at which the algorithm converges

References

Nurgazy Sulaimanov, Sunil Kumar, Frederic Burdet, Mark Ibberson, Marco Pagni, Heinz Koeppl. Inferring hub networks using weighted degree Lasso. http://arxiv.org/abs/1710.01912.

Examples

Run this code
# NOT RUN {
library(DWLasso)
library(glmnet)
library(hglasso)


# Generate inverse covariance matrix with 3 hubs
# 20 % of the elements within a hub are zero
# 97 % of the elements that are not within hub nodes are zero
p <- 60 # Number of variables
n <- 40 # Number of samples

hub_number = 3  # Number of hubs

# Generate the adjacency matrix
Theta <- HubNetwork(p,0.97,hub_number,0.2)$Theta

# Generate a data matrix
out <- rmvnorm(n,rep(0,p),solve(Theta))

# Standardize the data
dat <- scale(out)

# Estimate weights from the degrees of the inferred network
w.est <- weightEstim(dat, lam=0.4, a=1, tol=1e-6)
# }

Run the code above in your browser using DataLab