mask = groups == unique(groups).reshape(-1, 1)
mask
array([[True, True, True, False, False, False], [False, False, False, True,
    False, False], [False, False, False, False, True, True]], dtype=bool)
Произведение элементов массива по группе в numpy (Python)