Извлечь ненулевые элементы каждой строки массиваPython

Программы на Python
Anonymous
Извлечь ненулевые элементы каждой строки массива

Сообщение Anonymous »

Я использую Python 3.9/NumPy 1.22.
Предположим, у меня есть матрица 3x3:

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

import numpy as np
x = np.array([[10, 40, 0],
[0, 40, 90],
[10, 0, 90]])
Все элементы являются целыми числами >= 0.
Каждая строка содержит ровно два ненулевых целых числа.
Я хотел бы извлечь ненулевые целые числа для создания матрицы y 3x2, такой, что

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

y = np.array([[10, 40],
[40, 90],
[10, 90]])
Мне кажется, что я близок к использованию numpy.apply_along_axis, numpy.squeeze и/или numpy.where, но мне что-то не хватает.

Подробнее здесь: https://stackoverflow.com/questions/781 ... f-an-array

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