DirectLiNGAM

class lingam.DirectLiNGAM(random_state=None, prior_knowledge=None, apply_prior_knowledge_softly=False, measure='pwling')[source]

Implementation of DirectLiNGAM Algorithm [1] [2]

References

__init__(random_state=None, prior_knowledge=None, apply_prior_knowledge_softly=False, measure='pwling')[source]

Construct a DirectLiNGAM model.

Parameters:
  • random_state (int, optional (default=None)) – random_state is the seed used by the random number generator.

  • prior_knowledge (array-like, shape (n_features, n_features), optional (default=None)) –

    Prior knowledge used for causal discovery, where n_features is the number of features.

    The elements of prior knowledge matrix are defined as follows [1]:

    • 0 : \(x_i\) does not have a directed path to \(x_j\)

    • 1 : \(x_i\) has a directed path to \(x_j\)

    • -1 : No prior knowledge is available to know if either of the two cases above (0 or 1) is true.

  • apply_prior_knowledge_softly (boolean, optional (default=False)) – If True, apply prior knowledge softly.

  • measure ({'pwling', 'kernel', 'pwling_fast'}, optional (default='pwling')) – Measure to evaluate independence: ‘pwling’ [2] or ‘kernel’ [1]. For fast execution with GPU, ‘pwling_fast’ can be used (culingam is required).

property adjacency_matrix_

Estimated adjacency matrix.

Returns:

adjacency_matrix_ – The adjacency matrix B of fitted model, where n_features is the number of features.

Return type:

array-like, shape (n_features, n_features)

bootstrap(X, n_sampling)

Evaluate the statistical reliability of DAG based on the bootstrapping.

Parameters:
  • X (array-like, shape (n_samples, n_features)) – Training data, where n_samples is the number of samples and n_features is the number of features.

  • n_sampling (int) – Number of bootstrapping samples.

Returns:

result – Returns the result of bootstrapping.

Return type:

BootstrapResult

property causal_order_

Estimated causal ordering.

Returns:

causal_order_ – The causal order of fitted model, where n_features is the number of features.

Return type:

array-like, shape (n_features)

estimate_total_effect(X, from_index, to_index)

Estimate total effect using causal model.

Parameters:
  • X (array-like, shape (n_samples, n_features)) – Original data, where n_samples is the number of samples and n_features is the number of features.

  • from_index – Index of source variable to estimate total effect.

  • to_index – Index of destination variable to estimate total effect.

Returns:

total_effect – Estimated total effect.

Return type:

float

fit(X)[source]

Fit the model to X.

Parameters:

X (array-like, shape (n_samples, n_features)) – Training data, where n_samples is the number of samples and n_features is the number of features.

Returns:

self – Returns the instance itself.

Return type:

object

get_error_independence_p_values(X)

Calculate the p-value matrix of independence between error variables.

Parameters:

X (array-like, shape (n_samples, n_features)) – Original data, where n_samples is the number of samples and n_features is the number of features.

Returns:

independence_p_values – p-value matrix of independence between error variables.

Return type:

array-like, shape (n_features, n_features)