Numpy матрица сложение против ndarrays, удобный oneliner - PullRequest
0 голосов
/ 02 октября 2018

Как работает класс матрицы numpy?Я понимаю, что он, вероятно, будет удален в будущем, поэтому я пытаюсь понять, как это работает, поэтому я могу сделать то же самое с ndarrrays.

>>> x=np.matrix([[1,1,1],[2,2,2],[3,3,3]])
>>> x[:,0] + x[0,:]
matrix([[2, 2, 2],
    [3, 3, 3],
    [4, 4, 4]])

Похоже, ряд из них был добавлен в каждый ряд.

>>> x=np.matrix([[1,2,3],[1,2,3],[1,2,3]])
>>> x[0,:] + x[:,0]
matrix([[2, 3, 4],
        [2, 3, 4],
        [2, 3, 4]])

Теперь кажется, что в каждый столбец добавлен столбец из них.То, что он делает с тождеством, еще более странно,

>>> x=np.matrix([[1,0,0],[0,1,0],[0,0,1]])
>>> x[0,:] + x[:,0]
matrix([[2, 1, 1],
        [1, 0, 0],
        [1, 0, 0]])

РЕДАКТИРОВАТЬ: Кажется, если вы берете (N, 1) матрицу формы и добавляете ее в (N, 1) матрицу формызатем один из них реплицируется для формирования (N, N) матрицы, а другой добавляется к каждой строке или столбцу этой новой матрицы.Кажется, удобство ограничено векторами правильных размеров. хороший вариант использования был реализацией Floyd-Warshal от Networkx.

Есть ли такой же удобный однострочный для этого с использованием стандартных numpy ndarrays?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...