class_docstr: Compute treatment effect whenever the effect is fully mediated by
  another variable (front-door) or when there is an instrument available.
  
  Currently only supports a linear model for the effects.
  
  Supports additional parameters as listed below.
class_docstr_tok: ["Compute","treatment","effect","whenever","the","effect","is","fully","mediated","by","another","variable","(","front-door",")","or","when","there","is","an","instrument","available",".","Currently","only","supports","a","linear","model","for","the","effects",".","Supports","additional","parameters","as","listed","below","."]
code: def construct_symbolic_estimator(
      self,
      first_stage_symbolic,
      second_stage_symbolic,
      total_effect_symbolic=None,
      estimand_type=None,
  ):
      nie_symbolic = (
          "("
          + first_stage_symbolic
          + ")*("
          + second_stage_symbolic
          + ")"
      )
      if estimand_type == EstimandType.NONPARAMETRIC_NIE:
          return nie_symbolic
      elif estimand_type == EstimandType.NONPARAMETRIC_NDE:
          return (
              "(" + total_effect_symbolic + ") - (" + nie_symbolic + ")"
          )
  
file_path: dowhy/dowhy/causal_estimators/two_stage_regression_estimator.py
imports: import copy
  from typing import Any, List, Optional, Type, Union
  import numpy
  import pandas
  from dowhy.causal_estimator import CausalEstimate, CausalEstimator
  from dowhy.causal_estimators.linear_regression_estimator import LinearRegressionEstimator
  from dowhy.causal_identifier import EstimandType, IdentifiedEstimand
  from dowhy.utils.api import parse_state
label_desc: Use image node_id 5 for calling the TwoStageRegressionEstimator obj's underlying member method code with example usage: obj.construct_symbolic_estimator(first_stage_symbolic, second_stage_symbolic, total_effect_symbolic, estimand_type) and returns: nie_symbolic, unknown