code: def _gcm_linear(X, Y, Z=None):
      return generalised_cov_based(
          X,
          Y,
          Z=Z,
          prediction_model_X=create_linear_regressor,
          prediction_model_Y=create_linear_regressor,
      )
  
imports: from functools import partial
  import networkx
  import numpy
  import pandas
  import pytest
  from flaky import flaky
  from dowhy.datasets import generate_random_graph
  from dowhy.gcm.falsify import FalsifyConst, _PermuteNodes, falsify_graph, run_validations, validate_cm, validate_lmc, validate_pd, validate_tpa
  from dowhy.gcm.independence_test.generalised_cov_measure import generalised_cov_based
  from dowhy.gcm.independence_test.kernel import kernel_based
  from dowhy.gcm.ml import create_linear_regressor
  from tests.gcm.independence_test.test_kernel import _generate_categorical_data
label_desc: Use image node_id 1 for calling a global function with example usage: _gcm_linear(X, Y, Z) and returns: generalised_cov_based