Class IndTestFisherZRecursive

java.lang.Object
edu.cmu.tetrad.search.work_in_progress.IndTestFisherZRecursive
All Implemented Interfaces:
IndependenceTest

public final class IndTestFisherZRecursive extends Object implements IndependenceTest
Checks conditional independence of variable in a continuous data set using Fisher's Z test. See Spirtes, Glymour, and Scheines, "Causation, Prediction and Search," 2nd edition, page 94.
Version:
$Id: $Id
Author:
josephramsey, Frank Wimberly adapted IndTestCramerT for Fisher's Z
  • Constructor Details

    • IndTestFisherZRecursive

      public IndTestFisherZRecursive(DataSet dataSet, double alpha)
      Constructs a new Independence test which checks independence facts based on the correlation matrix implied by the given data set (must be continuous). The given significance level is used.
      Parameters:
      dataSet - A data set containing only continuous columns.
      alpha - The alpha level of the test.
    • IndTestFisherZRecursive

      public IndTestFisherZRecursive(Matrix data, List<Node> variables, double alpha)
      Constructs a new Fisher Z independence test with the listed arguments.
      Parameters:
      data - A 2D continuous data set with no missing values.
      variables - A list of variables, a subset of the variables of data.
      alpha - The significance cutoff level. p values less than alpha will be reported as dependent.
    • IndTestFisherZRecursive

      public IndTestFisherZRecursive(ICovarianceMatrix covMatrix, double alpha)
      Constructs a new independence test that will determine conditional independence facts using the given correlation matrix and the given significance level.
      Parameters:
      covMatrix - a ICovarianceMatrix object
      alpha - a double
  • Method Details

    • indTestSubset

      public IndependenceTest indTestSubset(List<Node> vars)
      Returns an Independence test for a sublist of the variables.

      Creates a new independence test instance for a subset of the variables.

      Specified by:
      indTestSubset in interface IndependenceTest
      Parameters:
      vars - The sublist of variables.
      Returns:
      a IndependenceTest object
    • checkIndependence

      public IndependenceResult checkIndependence(Node x, Node y, Set<Node> z)

      checkIndependence.

      Determines whether variable x is independent of variable y given a list of conditioning variables z.

      Specified by:
      checkIndependence in interface IndependenceTest
      Parameters:
      x - a Node object
      y - a Node object
      z - a Set object
      Returns:
      a IndependenceResult object
      See Also:
    • getPValue

      public double getPValue()

      getPValue.

      Returns:
      the probability associated with the most recently computed independence test.
    • getAlpha

      public double getAlpha()
      Gets the getModel significance level.
      Specified by:
      getAlpha in interface IndependenceTest
      Returns:
      a double
    • setAlpha

      public void setAlpha(double alpha)
      Sets the significance level.

      Sets the significance level at which independence judgments should be made. Affects the cutoff for partial correlations to be considered statistically equal to zero.

      Specified by:
      setAlpha in interface IndependenceTest
      Parameters:
      alpha - This level.
    • getVariables

      public List<Node> getVariables()

      Getter for the field variables.

      Specified by:
      getVariables in interface IndependenceTest
      Returns:
      the list of variables over which this independence checker is capable of determinine independence relations-- that is, all the variables in the given graph or the given data set.
    • setVariables

      public void setVariables(List<Node> variables)

      Setter for the field variables.

      Parameters:
      variables - a List object
    • getVariable

      public Node getVariable(String name)
      Returns The variable by the given name.
      Specified by:
      getVariable in interface IndependenceTest
      Parameters:
      name - a String object
      Returns:
      This variable.
    • determines

      public boolean determines(Set<Node> _z, Node x) throws UnsupportedOperationException
      Returns true if y is determined the variable in z.

      If isDeterminismAllowed(), deters to IndTestFisherZD; otherwise throws UnsupportedOperationException.

      Specified by:
      determines in interface IndependenceTest
      Parameters:
      _z - a Set object
      x - a Node object
      Returns:
      True, if so.
      Throws:
      UnsupportedOperationException
    • getData

      public DataSet getData()

      getData.

      Specified by:
      getData in interface IndependenceTest
      Returns:
      the data set being analyzed.
      See Also:
    • toString

      public String toString()

      toString.

      Specified by:
      toString in interface IndependenceTest
      Overrides:
      toString in class Object
      Returns:
      a string representation of this test.
    • getCov

      public ICovarianceMatrix getCov()

      getCov.

      Specified by:
      getCov in interface IndependenceTest
      Returns:
      a ICovarianceMatrix object
    • getDataSets

      public List<DataSet> getDataSets()
      Returns the datasets for this test
      Specified by:
      getDataSets in interface IndependenceTest
      Returns:
      these datasets.
    • getSampleSize

      public int getSampleSize()
      Returns the sample size.
      Specified by:
      getSampleSize in interface IndependenceTest
      Returns:
      This size.
    • isVerbose

      public boolean isVerbose()

      isVerbose.

      Specified by:
      isVerbose in interface IndependenceTest
      Returns:
      a boolean
    • setVerbose

      public void setVerbose(boolean verbose)
      Sets whether this test will print verbose output.
      Specified by:
      setVerbose in interface IndependenceTest
      Parameters:
      verbose - True, if so.