This is the main entry of the package FBNNet that can be used to mine the gene regulatory network.

generateFBMNetwork(
  timeseries_data,
  method = c("kmeans", "edgeDetector", "scanStatistic"),
  maxK = 4,
  useParallel = FALSE,
  max_deep_temporal = 1,
  threshold_confidence = 1,
  threshold_error = 0,
  threshold_support = 1e-05,
  maxFBNRules = 5,
  network_only = TRUE,
  verbose = FALSE
)

Arguments

timeseries_data

A list of timeseries data of samples.

method

Specify a method to discrete the data in the range of ('kmeans', 'edgeDetector', 'scanStatistic') for the function BoolNet::binarizeTimeSeries to convert the data from numeric value to boolean value.

maxK

The maximum deep of the Orchard Cube can mine into.

useParallel

Optional, by default it is FALSE not to run the network inference algorithm in parallel. FALSE without parallel

max_deep_temporal,

a setting for Temporal Fundamental Boolean model that specifies the maximum temporal space

threshold_confidence

A threshold of confidence (between 0 and 1) that used to filter the Fundamental Boolean functions

threshold_error

A threshold of error rate (between 0 and 1) that used to filter the Fundamental Boolean functions

threshold_support

A threshold of support (between 0 and 1) that used to filter the Fundamental Boolean functions

maxFBNRules

The maximum rules per type (Activation and Inhibition) per gene can be mined, the rest will be discarded

network_only

Optional for Debug purpose, if TRUE, only output the networks only, otherwise, output the Orchard cube as well. Warning, turn off this may cause memory leaking if the number of nodes is too large.

verbose

Optional, if it is TRUE, then output the logger information to the console.

Value

An object of a list contains Fundamental Boolean Network and Orchard cube (optional) if network_only set to FALSE.

References

Chen et al.(2018), Front. Physiol., 25 September 2018, (Front. Physiol.)

Mussel, Hopfensitz et al. 2010, BoolNet - an R package for generation, reconstruction and analysis of Boolean networks

Author

Leshi Chen, leshi, chen@lincolnuni.ac.nz, chenleshi@hotmail.com

Examples

 
data('yeastTimeSeries')

network <- generateFBMNetwork(yeastTimeSeries, verbose = TRUE)
#> INFO [2022-04-08 11:05:15] Enter generateFBMNetwork zone: 
#>           method=kmeans,
#>           maxK = 4, 
#>           useParallel = FALSE, 
#>           max_deep_temporal = 1,
#>           threshold_confidence = 1,
#>           threshold_error = 0,
#>           threshold_support = 1e-05,
#>           maxFBNRules = 5,
#>           network_only = TRUE,
#>           verbose = TRUE
#> INFO [2022-04-08 11:05:15] Run generateFBMNetwork with a single cube
#> INFO [2022-04-08 11:05:15] Enter constructFBNCube zone: 
#>         target_genes=4 genes and they are Fkh2, Swi5, Sic1, Clb1,
#>         conditional_genes=4 genes and they are Fkh2, Swi5, Sic1, Clb1,
#>         data_length=1,
#>         maxK=4, 
#>         temporal=1,
#>         useParallel=FALSE
#> INFO [2022-04-08 11:05:15] Leave constructFBNCube zone.
#> INFO [2022-04-08 11:05:15] Enter mineFBNNetwork zone: genes=, useParallel=FALSE
#> INFO [2022-04-08 11:05:15] Enter search_FBN_core zone: useParallel=FALSE
#> INFO [2022-04-08 11:05:15] Leave search_FBN_core zone
#> INFO [2022-04-08 11:05:15] Enter mineFBNNetworkWithCores zone
#> INFO [2022-04-08 11:05:15] Enter mineFBNNetworkStage2 zone
#> INFO [2022-04-08 11:05:15] Leave mineFBNNetworkStage2 zone
#> INFO [2022-04-08 11:05:15] Enter convertMinedResultToFBNNetwork zone
#> INFO [2022-04-08 11:05:15] Leave convertMinedResultToFBNNetwork zone
#> INFO [2022-04-08 11:05:15] Leave mineFBNNetworkWithCores zone
#> INFO [2022-04-08 11:05:15] Leave mineFBNNetwork zone
network
#> Fundamental Boolean Network with  3 genes
#> Genes involved:
#> Fkh2, Swi5, Clb1
#> 
#> Networks:
#> Multiple Transition Functions for Fkh2 with decay value = 1:
#> Fkh2_1_Activator: Fkh2 = Fkh2 (Confidence: 1, TimeStep: 1)
#> Fkh2_2_Activator: Fkh2 = Clb1 (Confidence: 1, TimeStep: 1)
#> 
#> Multiple Transition Functions for Swi5 with decay value = 1:
#> Swi5_1_Activator: Swi5 = Fkh2 (Confidence: 1, TimeStep: 1)
#> Swi5_2_Activator: Swi5 = Clb1 (Confidence: 1, TimeStep: 1)
#> 
#> Multiple Transition Functions for Clb1 with decay value = 1:
#> Clb1_1_Activator: Clb1 = Fkh2 (Confidence: 1, TimeStep: 1)
#> Clb1_2_Activator: Clb1 = Clb1 (Confidence: 1, TimeStep: 1)
## draw the general graph
FBNNetwork.Graph(network)
## get the Orchard cube as well as networks res <- generateFBMNetwork(yeastTimeSeries, network_only = FALSE) res #> $cube #> $Fkh2 #> $Fkh2$SubGenes #> $Fkh2$SubGenes$Fkh2 #> $Fkh2$SubGenes$Fkh2$ActivatorAndInhibitor #> $Fkh2$SubGenes$Fkh2$ActivatorAndInhibitor$Activator #> factor Confidence #> "Fkh2" "1" #> ConfidenceCounter all_confidence #> "1" "1" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1" "0" #> Identity type #> "Fkh2$1_Activator_of_Fkh2" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Fkh2$SubGenes$Fkh2$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Fkh2" "0.8" #> ConfidenceCounter all_confidence #> "0.8" "0.8" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1" "0.2" #> Identity type #> "Fkh2$0_Inhibitor_of_Fkh2" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Fkh2$SubGenes$Fkh2$Input #> [1] "Fkh2" #> #> #> $Fkh2$SubGenes$Clb1 #> $Fkh2$SubGenes$Clb1$ActivatorAndInhibitor #> $Fkh2$SubGenes$Clb1$ActivatorAndInhibitor$Activator #> factor Confidence #> "Clb1" "1" #> ConfidenceCounter all_confidence #> "1" "1" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1" "0" #> Identity type #> "Clb1$1_Activator_of_Fkh2" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Fkh2$SubGenes$Clb1$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Clb1" "0.8" #> ConfidenceCounter all_confidence #> "0.8" "0.8" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1" "0.2" #> Identity type #> "Clb1$0_Inhibitor_of_Fkh2" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Fkh2$SubGenes$Clb1$Input #> [1] "Clb1" #> #> #> #> #> $Swi5 #> $Swi5$SubGenes #> $Swi5$SubGenes$Fkh2 #> $Swi5$SubGenes$Fkh2$ActivatorAndInhibitor #> $Swi5$SubGenes$Fkh2$ActivatorAndInhibitor$Activator #> factor Confidence #> "Fkh2" "1" #> ConfidenceCounter all_confidence #> "0.875" "0.875" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1.14" "0" #> Identity type #> "Fkh2$1_Activator_of_Swi5" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Swi5$SubGenes$Fkh2$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Fkh2" "0.8" #> ConfidenceCounter all_confidence #> "0.6" "0.6" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1.33" "0.2" #> Identity type #> "Fkh2$0_Inhibitor_of_Swi5" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Swi5$SubGenes$Fkh2$Input #> [1] "Fkh2" #> #> #> $Swi5$SubGenes$Clb1 #> $Swi5$SubGenes$Clb1$ActivatorAndInhibitor #> $Swi5$SubGenes$Clb1$ActivatorAndInhibitor$Activator #> factor Confidence #> "Clb1" "1" #> ConfidenceCounter all_confidence #> "0.875" "0.875" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1.14" "0" #> Identity type #> "Clb1$1_Activator_of_Swi5" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Swi5$SubGenes$Clb1$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Clb1" "0.8" #> ConfidenceCounter all_confidence #> "0.6" "0.6" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1.33" "0.2" #> Identity type #> "Clb1$0_Inhibitor_of_Swi5" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Swi5$SubGenes$Clb1$Input #> [1] "Clb1" #> #> #> #> #> $Sic1 #> $Sic1$SubGenes #> named list() #> #> #> $Clb1 #> $Clb1$SubGenes #> $Clb1$SubGenes$Fkh2 #> $Clb1$SubGenes$Fkh2$ActivatorAndInhibitor #> $Clb1$SubGenes$Fkh2$ActivatorAndInhibitor$Activator #> factor Confidence #> "Fkh2" "1" #> ConfidenceCounter all_confidence #> "1" "1" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1" "0" #> Identity type #> "Fkh2$1_Activator_of_Clb1" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Clb1$SubGenes$Fkh2$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Fkh2" "0.8" #> ConfidenceCounter all_confidence #> "0.8" "0.8" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1" "0.2" #> Identity type #> "Fkh2$0_Inhibitor_of_Clb1" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Clb1$SubGenes$Fkh2$Input #> [1] "Fkh2" #> #> #> $Clb1$SubGenes$Clb1 #> $Clb1$SubGenes$Clb1$ActivatorAndInhibitor #> $Clb1$SubGenes$Clb1$ActivatorAndInhibitor$Activator #> factor Confidence #> "Clb1" "1" #> ConfidenceCounter all_confidence #> "1" "1" #> max_confidence support #> "1" "0.61538" #> causality_test Noise #> "1" "0" #> Identity type #> "Clb1$1_Activator_of_Clb1" "TT" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitP #> "TRUE" "0" #> #> $Clb1$SubGenes$Clb1$ActivatorAndInhibitor$Inhibitor #> factor Confidence #> "!Clb1" "0.8" #> ConfidenceCounter all_confidence #> "0.8" "0.8" #> max_confidence support #> "0.8" "0.30769" #> causality_test Noise #> "1" "0.2" #> Identity type #> "Clb1$0_Inhibitor_of_Clb1" "FF" #> timestep isNegativeCorrelated #> "1" "FALSE" #> isPossitiveCorrelated bestFitN #> "TRUE" "0.2" #> #> #> $Clb1$SubGenes$Clb1$Input #> [1] "Clb1" #> #> #> #> #> attr(,"class") #> [1] "FBNCube" #> #> $network #> Fundamental Boolean Network with 3 genes #> Genes involved: #> Fkh2, Swi5, Clb1 #> #> Networks: #> Multiple Transition Functions for Fkh2 with decay value = 1: #> Fkh2_1_Activator: Fkh2 = Fkh2 (Confidence: 1, TimeStep: 1) #> Fkh2_2_Activator: Fkh2 = Clb1 (Confidence: 1, TimeStep: 1) #> #> Multiple Transition Functions for Swi5 with decay value = 1: #> Swi5_1_Activator: Swi5 = Fkh2 (Confidence: 1, TimeStep: 1) #> Swi5_2_Activator: Swi5 = Clb1 (Confidence: 1, TimeStep: 1) #> #> Multiple Transition Functions for Clb1 with decay value = 1: #> Clb1_1_Activator: Clb1 = Fkh2 (Confidence: 1, TimeStep: 1) #> Clb1_2_Activator: Clb1 = Clb1 (Confidence: 1, TimeStep: 1) #>