Construct network for single target gene

single_network(
  matrix,
  regulators,
  target,
  cross_validation = FALSE,
  seed = 1,
  penalty = "L0",
  regulators_num = (ncol(matrix) - 1),
  n_folds = 10,
  subsampling_ratio = 1,
  r_threshold = 0,
  verbose = TRUE,
  ...
)

Arguments

matrix

An expression matrix.

regulators

The regulator genes for which to infer the regulatory network.

target

The target gene.

cross_validation

Logical value, default is FALSE, whether to use cross-validation.

seed

The random seed for cross-validation, default is 1.

penalty

The type of regularization, default is L0. This can take either one of the following choices: L0, L0L1, and L0L2. For high-dimensional and sparse data, L0L2 is more effective.

regulators_num

The number of non-zore coefficients, this value will affect the final performance. The maximum support size at which to terminate the regularization path.

n_folds

The number of folds for cross-validation, default is 10.

subsampling_ratio

The percent of all samples used for sparse_regression, default is 1.

r_threshold

Threshold of \(R^2\) or correlation coefficient, default is 0.

verbose

Logical value, default is TRUE, whether to print progress messages.

...

Parameters for other methods.

Value

The weight data table of sub-network

Examples

data("example_matrix")
head(
  single_network(
    example_matrix,
    regulators = colnames(example_matrix),
    target = "g1"
  )
)
#>   regulator target       weight
#> 1       g10     g1  0.009932787
#> 2       g11     g1  0.010286958
#> 3       g12     g1  0.017584462
#> 4       g13     g1 -0.002483363
#> 5       g14     g1 -0.021346832
#> 6       g15     g1  0.027390264

single_network(
  example_matrix,
  regulators = c("g1", "g2", "g3"),
  target = "g1"
)
#>   regulator target     weight
#> 1        g2     g1  0.9876086
#> 2        g3     g1 -0.1569370
single_network(
  example_matrix,
  regulators = c("g1", "g2"),
  target = "g1"
)
#> ! less than 2 regulators found while modeling: g1
#> NULL