gpt4 book ai didi

python - Python 的 numpy 中的 "zip()"相当于什么?

转载 作者:IT老高 更新时间:2023-10-28 20:22:56 26 4
gpt4 key购买 nike

我正在尝试使用 numpy 数组执行以下操作:

x = [(0.1, 1.), (0.1, 2.), (0.1, 3.), (0.1, 4.), (0.1, 5.)]
normal_result = zip(*x)

这应该给出以下结果:

normal_result = [(0.1, 0.1, 0.1, 0.1, 0.1), (1., 2., 3., 4., 5.)]

但是如果输入向量是一个numpy数组:

y = np.array(x)
numpy_result = zip(*y)
print type(numpy_result)

它(预期)返回一个:

<type 'list'>

问题是我需要在此之后将结果转换回一个 numpy 数组。

我想知道的是,如果有一个有效的 numpy 函数可以避免这些来回转换,那是什么?

最佳答案

你可以转置它...

>>> a = np.array([(0.1, 1.), (0.1, 2.), (0.1, 3.), (0.1, 4.), (0.1, 5.)])
>>> a
array([[ 0.1, 1. ],
[ 0.1, 2. ],
[ 0.1, 3. ],
[ 0.1, 4. ],
[ 0.1, 5. ]])
>>> a.T
array([[ 0.1, 0.1, 0.1, 0.1, 0.1],
[ 1. , 2. , 3. , 4. , 5. ]])

关于python - Python 的 numpy 中的 "zip()"相当于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12744778/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com