Хотя подобные вопросы были подняты пару раз, все же я не могу сделать функцию, аналогичную функции matlab ismember в Python. В частности, я хочу использовать эту функцию в цикле и сравнивать на каждой итерации целую матрицу с элементом другой матрицы. Если же значение, что происходит, я хочу, чтобы напечатать 1 и в любом другом случае 0.Функция matlab ismember в python
Пусть говорят, что у меня есть следующие матрицы
d = np.reshape(np.array([ 2.25, 1.25, 1.5 , 1. , 0. , 1.25, 1.75, 0. , 1.5 , 0. ]),(1,10))
d_unique = np.unique(d)
тогда я
d_unique
array([ 0. , 1. , 1.25, 1.5 , 1.75, 2.25])
Теперь я хотите перебрать как
J = np.zeros(np.size(d_unique))
for i in xrange(len(d_unique)):
J[i] = np.sum(ismember(d,d_unique[i]))
так, чтобы взять в качестве выхода:
J = [3,1,2,2,1,1]
Есть ли у кого-нибудь идеи? Спасибо заранее.
Ответы на [этот вопрос] (http://stackoverflow.com/questions/10741346/numpy-frequency-counts-for-unique-values-in-an-array) помогают? – Evert
Также по теме: http://stackoverflow.com/questions/1273041/how-can-i-implement-matlabs-ismember-command-in-python?rq=1 – Evert