import numpy as np>>> A = np.array([[0,1,2],[1,2,3],[2,3,4]])array([[0,4]])>>> v = [1,2]>>> B = (A==v[0]) + (A==v[1]) # matlab: ``B = ismember(A,v)``array([[False,True,True],[ True,False],False,False]],dtype=bool)
如果A和v有更多的值,是否有更方便的解决方案?
干杯!
解决方法 我不知道多少numpy,这里是一个原始的python:>>> A = [[0,4]]>>> v = [1,2]>>> B = [map(lambda val: val in v,a) for a in A]>>>>>> B[[False,[True,False]]
编辑:正如布鲁克斯摩西所指出的那样,一些简单的时机似乎表明,这个可能更好:
>>> B = [ [val in v for val in a] for a in A]总结
以上是内存溢出为你收集整理的如何在Python中实现matlabs“aremember()“命令?全部内容,希望文章能够帮你解决如何在Python中实现matlabs“aremember()“命令?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)