code: def test_cut_winsorized():
      np.random.seed(0)
      X_col = np.arange(-10, 90)
      X_col = np.concatenate(
          (
              [np.nan],
              [-np.inf],
              [-np.inf],
              X_col,
              [np.inf],
              [np.inf],
              [np.inf],
          )
      )
  
      native = Native.get_native_singleton()
  
      cuts = native.cut_winsorized(X_col, 10)
      bin_indexes = native.discretize(X_col, cuts)
      bin_counts = np.bincount(bin_indexes, minlength=len(cuts) + 2)
  
      assert len(cuts) == 10
      assert np.sum(bin_counts) == 106
      assert bin_counts[0] == 1
  
file_path: interpret/python/interpret-core/tests/utils/test_native.py
imports: from interpret.utils._native import Native
  import numpy
  from scipy.stats import normaltest, shapiro
label_desc: Use image node_id 2 for calling a global function with example usage: test_cut_winsorized() without return types