我正在尝试使用以下 for 循环遍历 python 中两个 numpy 数组的行:
for i, j in range(X.shape[0]), range(y.shape[0]):
但是我收到以下错误:
ValueError: too many values to unpack (expected 2)
我认为通过创建包含每个数组中行数的列表,我可以使用 i 的值遍历 X,并使用 j 的值遍历 y。
有人可以解释为什么这不起作用,以及我如何才能让它起作用吗?谢谢!
最佳答案
这不是您想要做的。
要遍历 X 中的行和 Y 中的行,您应该使用嵌套循环:
for i in range(X.shape[0]):
for j in range(Y.shape[0]):
func(i, j)
话虽如此,我还是强烈建议您在万不得已时使用循环。尽可能对函数进行矢量化。
如果您必须循环,您可以使用numba
来提高性能。
关于python - 遍历 python 中的 numpy 数组行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49863266/