如何迭代矩阵的列?

时间:2011-04-01 15:02:46

标签: python numpy

在python中如果是一个define:

a = arange(9).reshape(3,3)

作为3x3矩阵并迭代:

for i in a:

它将迭代矩阵的行。有没有办法迭代列?

2 个答案:

答案 0 :(得分:40)

怎么样

for i in a.transpose():

或者更短:

for i in a.T:

这可能看起来很昂贵,但实际上非常便宜(它会将视图返回到相同的数据上,但会改变形状和步幅属性)。

答案 1 :(得分:0)

假设a是一个格式良好的矩阵,你可以尝试类似:

b = zip(*a)
for index in b:
   ...