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: :param data: Pandas dataframe to estimate effect
code: def estimate_effect_naive(self, data: pd.DataFrame):
      """
      :param data: Pandas dataframe to estimate effect
      """
      # TODO Only works for binary treatment
      df_withtreatment = data.loc[
          data[self._target_estimand.treatment_variable] == 1
      ]
      df_notreatment = data.loc[
          data[self._target_estimand.treatment_variable] == 0
      ]
      est = np.mean(
          df_withtreatment[self._target_estimand.outcome_variable]
      ) - np.mean(
          df_notreatment[self._target_estimand.outcome_variable]
      )
      return CausalEstimate(
          data,
          None,
          None,
          est,
          None,
          control_value=0,
          treatment_value=1,
      )
  
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 5 for calling the CausalEstimator obj's underlying member method code with example usage: obj.estimate_effect_naive(data) and returns: CausalEstimate