Получение всего значения, которое является максимальным появлением каждой строки numpyPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получение всего значения, которое является максимальным появлением каждой строки numpy

Сообщение Anonymous »


Как собрать все значения, которые повторяются чаще всего в каждой строке массива numpy, например результат np.unique.
Однако я хочу избежать циклов, поскольку обрабатываемые данные будут намного больше (гораздо больше строк).

См. пример ниже

Ввод: a — это двумерный массив, имеющий форму (x, k), где x будет очень большим.< бр /> a = np.asarray([[2, 7, 7, 2, 1], [1, 2, 3, 5, 5], [6, 6, 6, 6, 6]])

Идеальный результат: [[2,7], [5], [6]], в первой строке [2,7] оба существуют в 2 раза< /п> Использование циклов почти справляется с этой задачей, но np.unique, похоже, не работает одинаково для многомерных массивов
[np.array(np.unique(i, return_counts=1)) для i в a] # достойный результат > [массив([[1, 2, 7],[1, 2, 2]], dtype=int64), массив([[1, 2, 3, 5], [1, 1, 1, 2]], dtype=int64), массив([[6], [5]], dtype=int64)] # Многомерный ввод np.unique(a, return_counts=1, ось=1) # Бесполезный вывод > (массив([[1, 2, 2, 7, 7], [5, 1, 5, 2, 3], [6, 6, 6, 6, 6]]), массив([1, 1, 1, 1, 1], dtype=int64))
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

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

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