nem                   package:nem                   R Documentation

_N_e_s_t_e_d _E_f_f_e_c_t_s _M_o_d_e_l_s - _m_a_i_n _f_u_n_c_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

     The main function to perform model learning from data

_U_s_a_g_e:

     nem(D,inference="nem.greedy",models=NULL,control=set.default.parameters(setdiff(unique(colnames(D)),"time")), verbose=TRUE)

     ## S3 method for class 'nem':
     print(x, ...)

_A_r_g_u_m_e_n_t_s:

       D: data matrix with experiments in the columns (binary or
          continious)

inference: 'search' to use exhaustive enumeration, 'triples' for
          triple-based inference, 'pairwise' for the pairwise
          heuristic, 'ModuleNetwork' for the module based inference,
          'nem.greedy' for greedy hillclimbing, 'nem.greedyMAP' for
          alternating MAP optimization using log odds or log p-value
          densities

  models: a list of adjacency matrices for model search. If NULL, an 
          exhaustive enumeration of all possible models is performed.

 control: list of parameters: see 'set.default.parameters'

 verbose: do you want to see progression statements? Default: TRUE

       x: nem object

     ...: other arguments to pass

_D_e_t_a_i_l_s:

     If parameter Pm != NULL and parameter lambda == 0, a Bayesian
     approach to include prior knowledge is used. Alternatively, the
     regularization parameter lambda can be tuned in a model selection
     step via the function 'nemModelSelection' using the BIC criterion.
      If automated subset selection of effect reporters is used and
     parameter type == CONTmLLMAP, the regularization parameter delta
     is tuned via the AIC model selection criterion. Otherwise, an
     iterative algorithm is executed, which in an alternating
     optimization scheme reconstructs a network given the current set
     of effect reporters and then selects the effect reporters having
     the highest likelihood under the given network. The procedure is
     run until convergence.

     The function 'plot.nem' plots the inferred phenotypic hierarchy as
     a directed graph, the likelihood distribution of the models (only
     for exhaustive search) or the posterior position of the effected
     genes.

_V_a_l_u_e:

   graph: the inferred directed graph (graphNEL object)

     mLL: log posterior marginal likelihood of final model

     pos: posterior over effect positions

  mappos: MAP estimate of effect positions

selected: selected E-gene subset

LLperGene: likelihood per selected E-gene

 control: hyperparameter as in function call

_A_u_t_h_o_r(_s):

     Holger Froehlich <URL: http:/www.dkfz.de/mga2/people/froehlich>,
     Florian Markowetz <URL: http://genomics.princeton.edu/~florian>

_S_e_e _A_l_s_o:

     'set.default.parameters', 'nemModelSelection', 'nem.jackknife',
     'nem.bootstrap', 'nem.consensus', 'local.model.prior', 'plot.nem'

_E_x_a_m_p_l_e_s:

        data("BoutrosRNAi2002")
        D <- BoutrosRNAiDiscrete[,9:16]
        control = set.default.parameters(unique(colnames(D)), para=c(0.13, 0.05))   
        res1 <- nem(D,inference="search", control=control)
        res2 <- nem(D,inference="pairwise", control=control)
        res3 <- nem(D,inference="triples", control=control)
        res4 <- nem(D,inference="ModuleNetwork", control=control)
        res5 <- nem(D,inference="nem.greedy", control=control)        
        res6 = nem(BoutrosRNAiLods, inference="nem.greedyMAP", control=control)
        

        par(mfrow=c(2,3))
        plot.nem(res1,main="exhaustive search")
        plot.nem(res2,main="pairs")
        plot.nem(res3,main="triples")
        plot.nem(res4,main="module network")
        plot.nem(res5,main="greedy hillclimber")      
        plot.nem(res6,main="alternating MAP optimization")

