Я пытаюсь создать массив, который содержит все строки, одна из которых (очень большой массив) совпадает с набором уникальных значений.Проблема состоит в том, что большой массив будет иметь несколько строк, где он будет совпадать, и мне нужно, чтобы все они хранились в одной строке нового массива.
Использование цикла for для обхода каждого из уникальных значений работает, но слишком медленно, чтобы его можно было использовать.Я искал векторизованное решение, но не увенчался успехом.Любая помощь будет принята с благодарностью!
arrStart = []
startRavel = startInforce['pol_id'].ravel()
for policy in unique_policies:
arrStart.append(np.argwhere(startRavel == policy))
Новый массив будет иметь ту же длину, что и массив уникальных значений, но каждый элемент будет списком всех строк, которые соответствуют этому уникальному значению в большом массиве..
Пример ввода будет выглядеть примерно так: startRavel = [1,2,2,2,3,3] unique_policies = [1,2,3]
Вывод: arrStart = [[0], [1,2,3], [4,5]]