我正在尝试复制 zip(a, b)
的行为,以便能够沿着两个 NumPy
数组同时循环。特别是,我有两个数组 a
和 b
:
a.shape=(n,m)
b.shape=(m,)
我想为每个循环获取一列a
和一个b
元素。
到目前为止,我已经尝试过以下方法:
for a_column, b_element in np.nditer([a, b]):
print(a_column)
但是,我打印的是元素 a[0,0]
而不是我想要的列 a[0,:]
。
我该如何解决这个问题?
最佳答案
您仍然可以在 numpy 数组上使用 zip
,因为它们是可迭代的。
在您的情况下,您需要首先转置a
,使其成为形状(m,n)
的数组,即长度的可迭代对象>米
:
for a_column, b_element in zip(a.T, b):
...
关于python - 迭代 NumPy 数组的列和另一个数组的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25961545/