假设我们有一个5x4的矩阵。 我们只需要移除第一维。 如何使用numpy实现?
array([[ 0., 1., 2., 3.],
[ 4., 5., 6., 7.],
[ 8., 9., 10., 11.],
[ 12., 13., 14., 15.],
[ 16., 17., 18., 19.]], dtype=float32)
我试过:
arr = np.arange(20, dtype=np.float32)
matrix = arr.reshape(5, 4)
new_arr = numpy.delete(matrix, matrix[:,0])
trimmed_matrix = new_arr.reshape(5, 3)
它看起来有点笨重。 如果是的话,是否有一种更干净的方法可以在不改变形状的情况下删除维度?
(5,3)
的数组?那么你想要删除一列(或者一般地,从一个维度中删除一个'entry')。删除一个维度会导致转换成一个(5,)
或(4,)
数组。 - DilithiumMatrixarr[:,1:]
。 - Christian K.np.delete
通过索引而非值进行操作。它不是list
的remove
方法。 - hpaulj