Разгадать по мультииндексу/группе [закрыто]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Разгадать по мультииндексу/группе [закрыто]

Сообщение Anonymous »

У меня есть массив numpy и соответствующие индексы строк и столбцов:

Код: Выделить всё

matrix = np.array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])

row_idx = np.array([0, 0, 0,
0, 0, 0,
0, 0, 0,])

col_idx = np.array([0, 1, 2,
0, 1, 2,
0, 1, 2])
Я хотел бы разгадать матрицу по группам, указанным в row_idx и col_idx. В этом примере все значения row_idx равны нулю, поэтому элементы будут распределяться по столбцам:

Код: Выделить всё

result = np.array([0, 3, 6, 1, 4, 7, 2, 5, 8])
Почему ravel не работает
Проблема ravel в том, что он не обобщает то, где находится матрица. области, сгруппированные по строкам, а другие области по столбцам на основе row_idx и col_idx. Может быть комбинация группировки строк и столбцов, как показано ниже:
В этом примере

Код: Выделить всё

matrix = np.array([[0, 1, 2],
[4, 5, 6],
[8, 9, 10]])

row_idx = np.array([0, 0, 0,
0, 0, 0,
1, 1, 1])

col_idx = np.array([0, 0, 1,
0, 0, 1,
0, 0, 1])

Код: Выделить всё

result (parentheses to highlight the groups):
(0, 1, 4, 5), (2, 6), (8,9) (10)
Почему numpy_groupies.aggregate() не работает
Я попробовалагрегировать() из пакета numpy_groupies, но он медленный и возвращает массив, объединяющий np.arrays и ints (что затрудняет и замедляет дальнейшие манипуляции).

Подробнее здесь: https://stackoverflow.com/questions/782 ... ndex-group
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»