perturbTrajectories: Perturb the state trajectories and calculate robustness...

View source: R/perturbTrajectories.R

perturbTrajectoriesR Documentation

Perturb the state trajectories and calculate robustness measures

Description

Perturbs the state trajectories of a network and assesses the robustness by comparing the successor states or the attractors of a set of initial states and a set of perturbed copies of these initial states.

Usage

perturbTrajectories(network, 
                    measure = c("hamming", "sensitivity", "attractor"), 
                    numSamples = 1000, 
                    flipBits = 1, 
                    updateType = c("synchronous", "asynchronous", "probabilistic"), 
                    gene, 
                    ...)

Arguments

network

A network structure of class BooleanNetwork, SymbolicBooleanNetwork or ProbabilisticBooleanNetwork whose robustness is measured.

measure

Defines the way the robustness is measured (see Details).

numSamples

The number of randomly generated pairs of initial states and perturbed copies. Defaults to 1000.

flipBits

The number of bits that are flipped to generate a perturbed copy of an initial state. Defaults to 1.

updateType

If measure="hamming", the type of update that is performed to calculate successor states.

gene

If measure="sensitivity", the name or index of the gene for whose transition function the average sensitivity is calculated.

...

Further parameters to stateTransition and getAttractors.

Details

The function generates a set of numSamples initial states and then applies flipBits random bit flips to each initial state to generate a perturbed copy of each initial state. For each pair of initial state and perturbed state, a robustness statistic is calculated depending measure:

If measure="hamming", the normalized Hamming distances between the successor states of each initial state and the corresponding perturbed state are calculated.

If measure="sensitivity", the average sensitivity of a specific transition function (specified in the gene parameter) is approximated: The statistic is a logical vector that is TRUE if gene differs in the successor states of each initial state and the corresponding perturbed state.

If measure="attractor", the attractors of all initial states and all perturbed states are identified. The statistic is a logical vector specifying whether the attractors are identical in each pair of initial state and perturbed initial state.

Value

A list with the following items:

stat

A vector of size numSamples containing the robustness statistic for each pair of initial state and perturbed copy.

value

The summarized statistic (i.e. the mean value) over all state pairs.

References

I. Shmulevich and S. A. Kauffman (2004), Activities and Sensitivities in Boolean Network Models. Physical Review Letters 93(4):048701.

See Also

testNetworkProperties, perturbNetwork

Examples

## Not run: 
data(cellcycle)

# calculate average normalized Hamming distance of successor states
hamming <- perturbTrajectories(cellcycle, measure="hamming", numSamples=100)
print(hamming$value)

# calculate average sensitivity of transition function for gene "Cdh1"
sensitivity <- perturbTrajectories(cellcycle, measure="sensitivity", numSamples=100, gene="Cdh1")
print(sensitivity$value)

# calculate percentage of equal attractors for state pairs
attrEqual <- perturbTrajectories(cellcycle, measure="attractor", numSamples=100)
print(attrEqual$value)

## End(Not run)

BoolNet documentation built on Oct. 2, 2023, 5:08 p.m.