为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕勒3428872 2019-10-14 10:50:57
假设我有:test = numpy.array([[1, 2], [3, 4], [5, 6]])test[i]使我得到数组的第i行(例如[1, 2])。如何访问第ith列?(例如[1, 3, 5])。另外,这将是一项昂贵的操作吗?
查看完整描述

3 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

如果您想一次访问多个列,则可以执行以下操作:


>>> test = np.arange(9).reshape((3,3))

>>> test

array([[0, 1, 2],

       [3, 4, 5],

       [6, 7, 8]])

>>> test[:,[0,2]]

array([[0, 2],

       [3, 5],

       [6, 8]])


查看完整回答
反对 回复 2019-10-14
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

>>> 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]])


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 265 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信