code: def test_given_multivariate_inputs_when_estimate_anomaly_scores_then_does_not_raise_error():
      """This test verifies that estimate_anomaly_scores correctly handles multivariate input features, which
      caused problems in an earlier version."""
  
      causal_model = ProbabilisticCausalModel(
          nx.DiGraph(
              [("X1", "X0"), ("X2", "X0"), ("X3", "X0"), ("X4", "X0")]
          )
      )
  
      data = np.random.normal(0, 1, (10000, 4))
      data = pd.DataFrame(
          {
              "X0": (
                  data[:, 0] + data[:, 1] + data[:, 2] + data[:, 3]
              ).reshape(-1),
              "X1": data[:, 0].reshape(-1),
              "X2": data[:, 1].reshape(-1),
              "X3": data[:, 2].reshape(-1),
              "X4": data[:, 3].reshape(-1),
          }
      )
      data_anomaly = pd.DataFrame(
          {
              "X0": [13],  # X1 + X2 + X3 + X4
              "X1": [10],
              "X2": [1],
              "X3": [1],
              "X4": [1],
          }
      )
  
      auto.assign_causal_mechanisms(
          causal_model, data, auto.AssignmentQuality.GOOD
      )
  
      fit(causal_model, data)
      scores = anomaly_scores(causal_model, data_anomaly)
      assert scores["X1"][0] == approx(-np.log(EPS), abs=3)
  
imports: import operator
  import networkx
  import numpy
  import pandas
  from flaky import flaky
  from pytest import approx
  from dowhy.gcm import AdditiveNoiseModel, EmpiricalDistribution, InverseDensityScorer, ITAnomalyScorer, MeanDeviationScorer, MedianCDFQuantileScorer, MedianDeviationScorer, ProbabilisticCausalModel, RescaledMedianCDFQuantileScorer, anomaly_scores, auto, fit
  from dowhy.gcm.anomaly import conditional_anomaly_scores
  from dowhy.gcm.constant import EPS
  from dowhy.gcm.distribution_change import estimate_distribution_change_scores
  from dowhy.gcm.ml import create_linear_regressor
label_desc: Use image node_id 11 for calling a global function with example usage: test_given_multivariate_inputs_when_estimate_anomaly_scores_then_does_not_raise_error() without return types