Inverso de la función bincount de numpy

Dado un conjunto de recuentos de enterosc, ¿cómo puedo transformar eso en una matriz de enteros?inds tal quenp.all(np.bincount(inds) == c) ¿es verdad?

Por ejemplo:

>>> c = np.array([1,3,2,2])
>>> inverse_bincount(c)  # <-- what I need

array([0,1,1,1,2,2,3,3])

Contexto: estoy tratando de hacer un seguimiento de la ubicación de múltiples conjuntos de datos, mientras realizo el cálculo de todos ellos a la vez. Concateno todos los datos para el procesamiento por lotes, pero necesito una matriz de índice para extraer los resultados.

Solución actual:

def inverse_bincount(c):
  return np.array(list(chain.from_iterable([i]*n for i,n in enumerate(c))))

Respuestas a la pregunta(3)

Su respuesta a la pregunta