code: def test_LearnerSCCS_coefficient_groups(self):
      n_lags = np.array([4, 0, 3, 4], dtype="uint64")
      n_features = len(n_lags)
      n_coeffs = (n_lags + 1).sum()
      coeffs = np.ones((n_coeffs,))
      # 1st feature
      coeffs[1:3] = 2
      # 2nd feature
      coeffs[5] = 1
      # 3rd feature
      coeffs[6:8] = 0
      # 4th feature
      coeffs[10:] = np.array([1, 2, 3, 4, 4])
      expected_equality_groups = [
          (1, 3),
          (3, 5),
          (6, 8),
          (8, 10),
          (13, 15),
      ]
      lrn = ConvSCCS(n_lags=n_lags, penalized_features=np.arange(4))
      lrn._set("n_features", n_features)
      equality_groups = lrn._detect_support(coeffs)
      self.assertEqual(expected_equality_groups, equality_groups)
  
file_path: tick/tick/survival/tests/convolutional_sccs_test.py
imports: import unittest
  import numpy
  from tick.survival import SimuSCCS, ConvSCCS
  from scipy.sparse import csr_matrix
  from tick.survival.sccs import *
label_desc: Use image node_id 2 for calling the Test obj's underlying member method code with example usage: obj.test_LearnerSCCS_coefficient_groups() without return types