CalculateDPI builds a DPI database for the TDCOR main function to prune diamond motifs
CalculateDPI(dataset,l_genes, l_prior, times, time_step, N, ks_int, kd_int,
delta_int, noise, delay)l_prior vector, the user defines which genes should be regarded as positive regulators, which others as negative regulators and which can only be targets. The prior code is defined as follow: -1 for negative regulator; 0 for non-regulator (target only); 1 for positive regulator; 2 for both positive and negative regulator. The i-th element of the vector is the prior to associate to the i-th gene in l_genes.
N should be >5000.
noise should not be too high (for instance below 0.2).
CalculateDPI returns a list object.
l_genes; The element named gene i contains 0 if no probability distribution has been
calculated for this gene (because its prior is 0) or a positive integer if this has been done. This positive integer then correponds to the number of the element in the list
prob_DPI that stores the spline functions of the calculated conditional probability distributions associated with this particular regulator.prob_DPI is stored in the prob_DPI_ind vector.CalculateDPI models two 4-genes networks showing slightly different topologies. Each network topology is modelled using a specific system of delay differential equations. For all genes listed in l_genes whose corresponding prior in l_prior is not null (i.e. the genes that are regarded as transcriptional regulators), the two systems of differential equations are solved N times with N different sets of random parameters. The Diamond Pruning Index (DPI) is calculated for all of these 2N networks. From these in silico data the conditional probability distribution of the DPI index given the regulator and the topology can be estimated. The probability distribution of the topology given DPI and the regulator is next calculated using Bayes' theorem and returned by the function. These shall be used when reconstructing the network to prune the "diamond" motifs. CalculateDPI returns a list object which works as a database. It not only stores the conditional probability distributions but also all the necessary information for TDCOR to access the data, and the input parameters. The latter are read by the UpdateDPI function to update the database.
UpdateDPI, TDCor-package.
## Not run:
# # Load the LR transcriptomic dataset
# data(LR_dataset)
#
# # Load the vector of gene codes, gene names and prior
# data(l_genes)
# data(l_names)
# data(l_prior)
#
# # Load the vector of time points for the LR_dataset
# data(times)
#
# # Generate a small DPI database (3 genes)
# DPI_example=CalculateDPI(dataset=LR_dataset,l_genes=l_genes[4:6],l_prior=l_prior[4:6],
# times=times,time_step=1,N=5000,ks_int=c(0.5,3),kd_int=c(0.5,3),delta_int=c(0.5,3),
# noise=0.15,delay=3)
#
# ## End(Not run)
Run the code above in your browser using DataLab