Last data update: 2014.03.03

R: Function to compute the CPs posterior distribution for the...
CP.postDistR Documentation

Function to compute the CPs posterior distribution for the ARTIVA network model from the the ouput samples of function ARTIVAsubnet.

Description

Using the ouput RJ-MCMC samples of functions ARTIVAsubnet, this function estimates posterior distributions for the number of CPs and their position.

Usage

CP.postDist(CPsamples, burn_in=NULL, segMinLength=2)

Arguments

CPsamples

A matrix with the different iterations (in row) performed with the ARTIVAsubnet function and in column the identified positions for CPs.

burn_in

Number of initial iterations that are discarded for the estimation of the model distribution (posterior distribution). The ARTIVAsubnet function is a RJ-MCMC algorithm which, at each iteration, randomly samples a new configuration of the time-varying regulatory network from probability distributions based on constructing a Markov chain that has the network model distribution as its equilibrium distribution (The equilibrium distribution is obtained when the Markov Chain converges, which requires a large number of iterations). Typically, initial iterations are notconfident because the Markov Chain has not stabilized. The burn-in samples allow to not consider these initial iterations in the final analysis (optional, default: burn_in=NULL, if burn_in=NULL then the first 25% of the iterations is left for burn_in).

segMinLength

Minimal length (number of time points) to define a temporal segment. Must be - strictly - greater than 1 if there is no repeated measurements for each time point in arguments targetData and parentData (optional, default: segMinLength=2).

Value

A list of 4 elements:

1) CPnumber: a table containing the approximate posterior distribution for the number of CPs.

2) CPposition: a table containing the approximate posterior distribution for the CPs position.

3) estimatedCPnumber: number of CP position with the greatest posterior probability according to the approximate posterior distribution for the number of CPs CPnumber.

4) estimatedCPpos: a table containing the estimatedCPnumber most significant CP positions according to CPnumber, CPposition and segMinLength (if parameter dyn=1, first CP is 2 and final CP is n+1, where n is the number of time points).

Author(s)

S. Lebre and G. Lelandais.

References

Statistical inference of the time-varying structure of gene-regulation networks S. Lebre, J. Becq, F. Devaux, M. P. H. Stumpf, G. Lelandais, BMC Systems Biology, 4:130, 2010.

See Also

ARTIVAsubnet, ARTIVAnet, plotCP.postDist, ARTIVAsubnetAnalysis

Examples

# Load the ARTIVA R package
library(ARTIVA)

# Load the dataset with simulated gene expression profiles
data(simulatedProfiles)

# Name of the target gene to be analyzed with ARTIVA 
targetGene = 1

# Names of the parent genes (typically transcription factors) 
parentGenes = c("TF1", "TF2", "TF3", "TF4", "TF5")

# run ARTIVAsubnet

# Note that the number of iterations in the RJ-MCMC sampling is reduced 
# to 'niter=20000' in this example, but it should be increased (e.g. up to
# 50000) for a better estimation.
## Not run: 
ARTIVAtest = ARTIVAsubnet(targetData = simulatedProfiles[targetGene,],
  parentData = simulatedProfiles[parentGenes,],
  targetName = targetGene,
  parentNames = parentGenes,
  segMinLength = 2,
  edgesThreshold = 0.6, 
  niter= 20000,
  savePictures=FALSE)

# compute the PC posterior distribution with other parameters
outCPpostDist = CP.postDist(ARTIVAtest$Samples$CP, burn_in=10000, 
			    segMinLength=3)

# plot the CP posterior distribution
plotCP.postDist(outCPpostDist, targetName=paste("Target", targetGene), 
		  estimatedCPpos=outCPpostDist$estimatedCPpos)

## End(Not run)

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(ARTIVA)
Loading required package: MASS
Loading required package: igraph

Attaching package: 'igraph'

The following objects are masked from 'package:stats':

    decompose, spectrum

The following object is masked from 'package:base':

    union

Loading required package: gplots

Attaching package: 'gplots'

The following object is masked from 'package:stats':

    lowess

> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/ARTIVA/CP.postDist.Rd_%03d_medium.png", width=480, height=480)
> ### Name: CP.postDist
> ### Title: Function to compute the CPs posterior distribution for the
> ###   ARTIVA network model from the the ouput samples of function
> ###   ARTIVAsubnet.
> ### Aliases: CP.postDist
> ### Keywords: util
> 
> ### ** Examples
> 
> # Load the ARTIVA R package
> library(ARTIVA)
> 
> # Load the dataset with simulated gene expression profiles
> data(simulatedProfiles)
> 
> # Name of the target gene to be analyzed with ARTIVA 
> targetGene = 1
> 
> # Names of the parent genes (typically transcription factors) 
> parentGenes = c("TF1", "TF2", "TF3", "TF4", "TF5")
> 
> # run ARTIVAsubnet
> 
> # Note that the number of iterations in the RJ-MCMC sampling is reduced 
> # to 'niter=20000' in this example, but it should be increased (e.g. up to
> # 50000) for a better estimation.
> ## Not run: 
> ##D ARTIVAtest = ARTIVAsubnet(targetData = simulatedProfiles[targetGene,],
> ##D   parentData = simulatedProfiles[parentGenes,],
> ##D   targetName = targetGene,
> ##D   parentNames = parentGenes,
> ##D   segMinLength = 2,
> ##D   edgesThreshold = 0.6, 
> ##D   niter= 20000,
> ##D   savePictures=FALSE)
> ##D 
> ##D # compute the PC posterior distribution with other parameters
> ##D outCPpostDist = CP.postDist(ARTIVAtest$Samples$CP, burn_in=10000, 
> ##D 			    segMinLength=3)
> ##D 
> ##D # plot the CP posterior distribution
> ##D plotCP.postDist(outCPpostDist, targetName=paste("Target", targetGene), 
> ##D 		  estimatedCPpos=outCPpostDist$estimatedCPpos)
> ## End(Not run)
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>