code: def test_given_categorical_target_node_when_estimate_arrow_strength_of_model_classifier_then_returns_expected_result():
      X = np.random.random((1000, 5))
      Y = []
  
      for n in X:
          if (n[0] + n[1] + np.random.random(1)) > 1.5:
              Y.append(0)
          else:
              Y.append(1)
  
      classifier_sem = ClassifierFCM(
          create_logistic_regression_classifier()
      )
      classifier_sem.fit(X, np.array(Y).astype(str))
  
      assert arrow_strength_of_model(classifier_sem, X) == approx(
          np.array([0.3, 0.3, 0, 0, 0]), abs=0.1
      )
  
imports: import random
  import networkx
  import numpy
  import pandas
  import pytest
  from flaky import flaky
  from pytest import approx
  from scipy import stats
  from dowhy.gcm import AdditiveNoiseModel, ClassifierFCM, ProbabilisticCausalModel, ScipyDistribution, arrow_strength, fit
  from dowhy.gcm.auto import assign_causal_mechanisms
  from dowhy.gcm.divergence import estimate_kl_divergence_continuous_knn
  from dowhy.gcm.influence import arrow_strength_of_model
  from dowhy.gcm.ml import create_linear_regressor, create_linear_regressor_with_given_parameters, create_logistic_regression_classifier
label_desc: Use image node_id 5 for calling a global function with example usage: test_given_categorical_target_node_when_estimate_arrow_strength_of_model_classifier_then_returns_expected_result() without return types