I have a numpy array of dimension (48, 366, 3) and I want to remove the last column from the array to make it (48, 365, 3). What is the best way to do that? (All the entries are integers. I'm using Python v2.6)
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You could try numpy.delete
:
http://docs.scipy.org/doc/numpy/reference/generated/numpy.delete.html
or just get the slice of the array you want and write it to a new array.
For example:
a = np.random.randint(0,2, size=(48,366,3))
b = np.delete(a, np.s_[-1:], axis=1)
print b.shape # <--- (48,365,3)
or equivalently:
b = np.delete(a, -1, axis=1)
or:
b = a[:,:-1,:]
回答2:
Along the lines:
In []: A= rand(48, 366, 3)
In []: A.shape
Out[]: (48, 366, 3)
In []: A= A[:, :-1, :]
In []: A.shape
Out[]: (48, 365, 3)