glmSparseNet {glmSparseNet} | R Documentation

## Calculate GLM model with network-based regularization

### Description

network parameter accepts:

### Usage

    glmSparseNet(xdata, ydata, network, network.options = networkOptions(),
      experiment.name = NULL, ...)

### Arguments

`xdata` | input data, can be a matrix or MultiAssayExperiment
`ydata` | response data compatible with glmnet
`network` | type of network, see below
`network.options` | options to calculate network
`experiment.name` | name of experiment to use as input in MultiAssayExperiment object (only if xdata is an object of this class)
`...` | parameters that glmnet accepts

### Details

* string to calculate network based on data (correlation, covariance) * matrix representing the network * vector with already calculated penalty weights (can also be used directly with glmnet)

### Value

an object just as glmnet

### Examples

    xdata <- matrix(rnorm(100), ncol = 20)
    glmSparseNet(xdata, rnorm(nrow(xdata)), 'correlation', family = 'gaussian')
    glmSparseNet(xdata, rnorm(nrow(xdata)), 'covariance', family = 'gaussian')

    #
    #
    # Using MultiAssayExperiment
    # load data
    xdata <- MultiAssayExperiment::miniACC
    # TODO aking out x indivudals missing values
    # build valid data with days of last follow up or to event
    event.ix <- which(!is.na(xdata$days_to_death))
    cens.ix <- which(!is.na(xdata$days_to_last_followup))
    xdata$surv_event_time <- array(NA, nrow(colData(xdata)))
    xdata$surv_event_time[event.ix] <- xdata$days_to_death[event.ix]
    xdata$surv_event_time[cens.ix] <- xdata$days_to_last_followup[cens.ix]
    # Keep only valid individuals
    valid.ix <- as.vector(!is.na(xdata$surv_event_time) &
                          !is.na(xdata$vital_status) &
                          xdata$surv_event_time > 0)
    xdata.valid <- xdata[, rownames(colData(xdata))[valid.ix]]
    ydata.valid <- colData(xdata.valid)[,c('surv_event_time', 'vital_status')]
    colnames(ydata.valid) <- c('time', 'status')
    glmSparseNet(xdata.valid,
                 ydata.valid,
                 family          = 'cox',
                 network         = 'correlation',
                 experiment.name = 'RNASeq2GeneNorm')

[Package glmSparseNet version 1.6.0 Index]