0
我在使numpy.any()在我的问题上正常工作时遇到了一些小问题。 考虑我有一个N×M×M矩阵的3D矩阵,我需要摆脱任何具有所有元素相同的[所有零说]的矩阵MXM。 下面是一个例子来说明我的问题需要对numpy.any进行小小的说明,对于矩阵
x = np.arange(250).reshape(10,5,5)
x[0,:,:] = 0
我需要做的就是摆脱第一5x5矩阵,因为它包含所有零是什么。 所以我试着用
np.any(x,axis=0)
,并预计将有
[FALSE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE]
一个结果,但我得到的是
array([[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True]
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True]], dtype=bool)
运用follwing结果与我想要什么,但我希望,没有任何回路有更好的方法
for i in range(x.shape[0]):
y.append(np.any(x[i,:,:]))
我在这里的某处犯了错吗? 谢谢!
看起来我正在用文字去挑选,但是你*不能*有一个比(或更少)2维的矩阵。你的问题作为一个关于数组的问题是有效的(它可以有任意的维数)。我写了一篇关于这个的博客文章:http://wilsonericn.wordpress.com/2011/09/15/the-first-thing-you-should -know-大约矩阵/ –