我尝试运行下面的代码,但需要很长时间,有没有办法改进这段代码?我尝试了很多python函数,但所有看起来都只是为了与1D数组一起工作,对不起代码我很陌生:
返回包含唯一元素的数组的函数:
<link href="@BotDetect.Web.CaptchaUrls.Absolute.LayoutStyleSheetUrl" rel="stylesheet" type="text/css" />
验证给定元素是否已在数组中的函数:
def get_unique_values(dataset):
uniqueimages=np.empty(dataset.shape, dtype=np.float32)
u=0
for i in range(dataset.shape[0]):
if (check_if_exists(dataset[i,:,:],uniqueimages)==0):
uniqueimages[u,:,:]=dataset[i,:,:]
u=u+1
return uniqueimages[0:u,:,:]
然后我运行这个给出一个3D数组作为输入(shape = 2000,28,28):
def check_if_exists( q,a ):
r=0
for i in range(a.shape[0]):
if np.array_equal(q,a[i,:,:]):
r=1
break
return r
编辑:这个问题在另一个相关问题中解决了,感谢Divakar!
答案 0 :(得分:0)
如果要从numpy数组中获取唯一元素,可以使用numpy @Input() someInputVariableInModule1
函数。
@Input()