class_docstr: Base class for an estimator of causal effect.
  
  Subclasses implement different estimation methods. All estimation methods are in the package "dowhy.causal_estimators"
class_docstr_tok: ["Base","class","for","an","estimator","of","causal","effect",".","Subclasses","implement","different","estimation","methods",".","All","estimation","methods","are","in","the","package","``","dowhy.causal_estimators","''"]
docstr: Test statistical significance of obtained estimate.
  
  By default, uses resampling to create a non-parametric significance test.
  A general procedure. Individual child estimators can implement different methods.
  If the method name is different from "bootstrap", this function calls the
  implementation of the child estimator.
  
  :param self: object instance of class Estimator
  :param estimate_value: obtained estimate's value
  :param method: Method for checking statistical significance
  
  :returns: p-value from the significance test
code: def test_significance(
      self, data: pd.DataFrame, estimate_value, method=None, **kwargs
  ):
      """Test statistical significance of obtained estimate.
  
      By default, uses resampling to create a non-parametric significance test.
      A general procedure. Individual child estimators can implement different methods.
      If the method name is different from "bootstrap", this function calls the
      implementation of the child estimator.
  
      :param self: object instance of class Estimator
      :param estimate_value: obtained estimate's value
      :param method: Method for checking statistical significance
  
      :returns: p-value from the significance test
  
      """
      if method is None:
          if self._significance_test:
              method = (
                  self._significance_test
              )  # this is either True or methodname
          else:
              method = "default"
      signif_dict = None
      if (
          method == "default" or method is True
      ):  # user has not provided any method
          try:
              signif_dict = self._test_significance(
                  estimate_value, method, **kwargs
              )
          except NotImplementedError:
              signif_dict = self._test_significance_with_bootstrap(
                  data, estimate_value, **kwargs
              )
      else:
          if method == "bootstrap":
              signif_dict = self._test_significance_with_bootstrap(
                  data, estimate_value, **kwargs
              )
          else:
              signif_dict = self._test_significance(
                  estimate_value, method, **kwargs
              )
      return signif_dict
  
imports: import copy
  import logging
  from collections import namedtuple
  from typing import Dict, List, Optional, Union
  import numpy
  import pandas
  import sympy
  from sklearn.utils import resample
  import dowhy.interpreters
  from dowhy.causal_identifier.identified_estimand import IdentifiedEstimand
  from dowhy.utils.api import parse_state
label_desc: Use image node_id 20 for calling the CausalEstimator obj's underlying member method code with example usage: obj.test_significance(data, estimate_value, method) and returns: signif_dict