This function splits the models to 'good' and 'bad' based on the predictions of two different synergy sets, one of them being a subset of the other. The 'good' models are those that predict the synergy.set.str (e.g. "A-B,A-C,B-C") while the 'bad' models are those that predict the synergy.subset.str (e.g. "A-B,B-C"). Then, for each network node, the function finds the node's average activity in each of the two classes (a value in the [0,1] interval) and then subtracts the bad class average activity value from the good one, taking into account the given penalty factor and the number of models in the 'good' and 'bad' class respectively.

get_avg_activity_diff_based_on_synergy_set_cmp(
  synergy.set.str,
  synergy.subset.str,
  model.predictions,
  models.stable.state,
  penalty = 0
)

Arguments

synergy.set.str

a string of drug combinations, comma-separated. The number of the specified combinations must be larger than the ones defined in the synergy.subset.str parameter. They also must be included in the tested drug combinations, i.e. the columns of the model.predictions parameter.

synergy.subset.str

a string of drug combinations, comma-separated. There must be at least one combination defined and all of them should also be included in the synergy.set.str parameter.

model.predictions

a data.frame object with rows the models and columns the drug combinations. Possible values for each model-drug combination element are either 0 (no synergy predicted), 1 (synergy was predicted) or NA (couldn't find stable states in either the drug combination inhibited model or in any of the two single-drug inhibited models)

models.stable.state

a data.frame (nxm) with n models and m nodes. The row names specify the models' names whereas the column names specify the network nodes (gene, proteins, etc.). Possible values for each model-node element can be between 0 (inactive node) and 1 (active node) inclusive.

penalty

value between 0 and 1 (inclusive). A value of 0 means no penalty and a value of 1 is the strickest possible penalty. Default value is 0. This penalty is used as part of a weighted term to the difference in a value of interest (e.g. activity or link operator difference) between two group of models, to account for the difference in the number of models from each respective model group.

Value

a numeric vector with values in the [-1,1] interval (minimum and maximum possible average difference) and with the names attribute representing the name of the nodes.

Details

So, if a node has a value close to -1 it means that on average, this node is more inhibited in the models that predicted the extra synergy(-ies) that are included in the synergy.set.str but not in the synergy.subset.str, whereas a value closer to 1 means that the node is more activated in these models. These nodes are potential biomarkers because their activity state can influence the prediction performance of a model and make it predict the extra synergy(-ies). A value closer to 0 indicates that the activity of that node is not so much different between the models that predicted the synergy set and those that predicted it's subset, so it won't be a node of interest when searching for potential biomarkers for the extra synergy(-ies).

See also