如何访问NumPy多维数组的第i列?

假设我有:


test = numpy.array([[1, 2], [3, 4], [5, 6]])

test[i]使我得到数组的第i行(例如[1, 2])。如何访问第ith列?(例如[1, 3, 5])。另外,这将是一项昂贵的操作吗?


慕勒3428872
浏览 266回答 3
3回答

HUX布斯

如果您想一次访问多个列,则可以执行以下操作:>>> test = np.arange(9).reshape((3,3))>>> testarray([[0, 1, 2],       [3, 4, 5],       [6, 7, 8]])>>> test[:,[0,2]]array([[0, 2],       [3, 5],       [6, 8]])

慕田峪7331174

>>> test[:,0]array([1, 3, 5])该命令为您提供了行向量,如果您只想在其上循环,就可以了,但是如果您要与其他尺寸为3xN的数组进行堆叠,则可以ValueError:所有输入数组的维数必须相同而>>> test[:,[0]]array([[1],       [3],       [5]])为您提供列向量,以便您可以进行串联或hstack操作。例如>>> np.hstack((test, test[:,[0]]))array([[1, 2, 1],       [3, 4, 3],       [5, 6, 5]])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python