> reduceat is somewhat quirky

maybe reduceat needs a `where` argument too, with which we could write:
```python
out = np.zeros(len(mat.indptr) - 1)
d = np.diff(mat.indptr)
np.minimum.reduceat(mat.data, mat.indptr[:-1], where=d, out=out)
out = np.minimum(out, 0, where=d < N, out=out)
```