code: def test_equation_parser_fit_func_is_giving_correct_results():
      observations = _generate_data()
  
      causal_model = ProbabilisticCausalModel(
          nx.DiGraph([("X0", "X1"), ("X0", "X2"), ("X2", "X3")])
      )
      _assign_causal_mechanisms(causal_model)
  
      fit(causal_model, observations)
      normal_results = causal_model.causal_mechanism(
          "X1"
      )._prediction_model.predict(observations[["X0"]].to_numpy())
      normal_results = np.around(normal_results, 2)
      causal_model_from_eq = _get_causal_model_from_eq()
      fit(causal_model_from_eq, observations)
      eq_results = causal_model_from_eq.causal_mechanism(
          "X1"
      )._prediction_model.predict(observations[["X0"]].to_numpy())
      eq_results = np.around(eq_results, 2)
      assert np.array_equal(normal_results, eq_results)
  
file_path: dowhy/tests/gcm/test_equation_parser.py
imports: import networkx
  import numpy
  import pandas
  from flaky import flaky
  from dowhy.gcm import AdditiveNoiseModel, EmpiricalDistribution, ProbabilisticCausalModel, create_causal_model_from_equations, fit
  from dowhy.gcm.causal_mechanisms import ConditionalStochasticModel
  from dowhy.gcm.ml import create_linear_regressor_with_given_parameters
label_desc: Use image node_id 1 for calling a global function with example usage: test_equation_parser_fit_func_is_giving_correct_results() without return types