Как узнать, сколько столбцов двух пустых массивов совпадают друг с другом? - PullRequest
0 голосов
/ 08 марта 2019

У меня есть две матрицы массивов (10,10000) с только 0's и 1's.Я хочу посчитать, сколько столбцов совпадают.Как пример:

ms
Out[164]: 
array([[1., 0., 0., 1.],
       [0., 1., 1., 0.],
       [0., 0., 0., 0.]])

y_en
Out[165]: 
array([[0., 1., 0., 1.],
       [1., 0., 0., 0.],
       [0., 0., 1., 0.]])

последний столбец совпадений ms и y_en, поэтому я должен получить 1 (найдено только одно совпадение столбцов).Я попытался len(ms[ms==y_en]), но, очевидно, это не сравнение столбцов.Как правильно определить количество совпадающих столбцов?

1 Ответ

2 голосов
/ 08 марта 2019

Вы можете попробовать это

import numpy as np
ms = np.array([[1., 0., 0., 1.],
               [0., 1., 1., 0.],
               [0., 0., 0., 0.]])
y_en = np.array([[0., 1., 0., 1.],
                 [1., 0., 0., 0.],
                 [0., 0., 1., 0.]])

np.count_nonzero(np.sum(abs(ms-y_en), axis=0) == 0)

Таким образом, в основном вы вычитаете два массива и подсчитываете количество столбцов, в которых сумма абсолютного значения разности равна нулю.

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