本文介绍了在python中用元组制作成员向量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个元组/列表列表.示例:
I have a list of tuples/lists.Example:
a = [[1,2], [2,4], [3,6]]
鉴于所有子列表的长度相同,我希望将其拆分并接收每个成员的列表/向量.
Given all sub-lists are the same length I want to split them and receive lists/vectors for each member.
或合而为一[[1,2,3],[2,4,6]]
每个使用numpy或默认列表的解决方案都将得到认可.
Or in one [[1,2,3],[2,4,6]]
Every solution using numpy or default lists would be appretiated.
我还没有找到一种方法来以Python的方式或通过使用除循环以外的任何其他功能来有效地做到这一点:
I have not found a way to do this pythonicly, or efficiently by using any other feature than loops:
def vectorise_pairs(pairs):
return [[p[0] for p in pairs],
[p[1] for p in pairs]
]
有更好的方法吗?
推荐答案
由于您标记了numpy,所以my_array.T
会转置my_array
.
Since you tagged numpy, my_array.T
transposes my_array
.
>>> import numpy as np
>>> a = [[1,2], [2,4], [3,6]]
>>> np.array(a).T
array([[1, 2, 3],
[2, 4, 6]])
或者,您可以使用np.transpose
(甚至可以接受列表).
Alternatively, you can use np.transpose
(which even accepts lists).
>>> np.transpose(a)
array([[1, 2, 3],
[2, 4, 6]])
这篇关于在python中用元组制作成员向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!