Perform an independence test using Fisher-z’s test 1. This test is optimal for linear-Gaussian data.
from causallearn.utils.cit import CIT fisherz_obj = CIT(data, "fisherz") # construct a CIT instance with data and method name pValue = fisherz_obj(X, Y, S)
Please be kindly informed that we have refactored the independence tests from functions to classes since the release v0.1.2.8. Speed gain and a more flexible parameters specification are enabled.
For users, you may need to adjust your codes accordingly. Specifically,
If you are running a constraint-based algorithm from end to end: then you don’t need to change anything. Old codes are still compatible. For example,
from causallearn.search.ConstraintBased.PC import pc from causallearn.utils.cit import fisherz cg = pc(data, 0.05, fisherz)
If you are explicitly calculating the p-value of a test: then you need to declare the
fisherz_objand then call it as above, instead of using
fisherz(data, X, Y, condition_set)as before. Note that now
causallearn.utils.cit.fisherzis a string
"fisherz", instead of a function.
Please see CIT.py for more details on the implementation of the (conditional) independent tests.
data: numpy.ndarray, shape (n_samples, n_features). Data, where n_samples is the number of samples and n_features is the number of features.
method: string, “fisherz”.
cache_path. See Advanced Usages.
p: the p-value of the test.
Fisher, R. A. (1921). On the’probable error’of a coefficient of correlation deduced from a small sample. Metron, 1, 1-32.