“”"

def _resample_data(X, y, N):

```
"""Limit sampling to N instances per class."""
if N > 0:
# Split labels into set of indexes for each class
class_idxs = [np.where(y == c)[0] for c in np.unique(y)]
# Shuffle each of sets of indexes
[np.random.shuffle(i) for i in class_idxs]
# Take N indexes, or fewer if total is less than N
subset_idx = [i[:N] if len(i) >= N else i for i in class_idxs]
# Use advanced indexing to get subsets of X and y
idxs = np.array(subset_idx).ravel()
np.random.shuffle(idxs)
X, y = X[idxs], y[idxs]
return X, y
```

X,y = {},{}

tgt_num = 100

##
X[‘tgt’], y[‘tgt’] = _resample_data(tgt_X, tgt_y, tgt_num)

“”"

/usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:15: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify ‘dtype=object’ when creating the ndarray

from ipykernel import kernelapp as app

IndexError Traceback (most recent call last)

in ()

1 X,y = {},{}

2 tgt_num = 100

----> 3 X[‘tgt’], y[‘tgt’] = _resample_data(tgt_X, tgt_y, tgt_num)

in _resample_data(X, y, N)

15 idxs = np.array(subset_idx).ravel()

16 np.random.shuffle(idxs)

—> 17 X, y = X[idxs], y[idxs]

18

19 return X, y

IndexError: arrays used as indices must be of integer (or boolean) type