code: def sparse_canberra(ind1, data1, ind2, data2):
      abs_data1 = np.abs(data1)
      abs_data2 = np.abs(data2)
      denom_inds, denom_data = sparse_sum(
          ind1, abs_data1, ind2, abs_data2
      )
      denom_data = (1.0 / denom_data).astype(np.float32)
      numer_inds, numer_data = sparse_diff(ind1, data1, ind2, data2)
      numer_data = np.abs(numer_data)
  
      _, val_data = sparse_mul(
          numer_inds, numer_data, denom_inds, denom_data
      )
      result = 0.0
      for val in val_data:
          result += val
  
      return result
  
imports: from __future__ import print_function
  import locale
  import numpy
  import numba
  from pynndescent.utils import norm, tau_rand
  from pynndescent.distances import kantorovich, jensen_shannon_divergence, symmetric_kl_divergence
label_desc: Use image node_id 17 for calling a global function with example usage: sparse_canberra(ind1, data1, ind2, data2) and returns: result