首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python中的快速矩阵转置

Python中的快速矩阵转置
EN

Stack Overflow用户
提问于 2010-05-27 21:50:25
回答 2查看 7.1K关注 0票数 4

有没有什么快速的方法可以在Python中进行矩形2D矩阵的转置(不涉及任何库导入)?

比如说,如果我有一个数组

代码语言:javascript
复制
X=[ [1,2,3],
    [4,5,6] ]

我需要一个数组Y,它应该是X的转置版本,所以

代码语言:javascript
复制
Y=[ [1,4],
    [2,5],
    [3,6] ] 
EN

回答 2

Stack Overflow用户

发布于 2010-05-27 21:55:52

代码语言:javascript
复制
>>> X = [1,2,3], [4,5,6]]
>>> zip(*X)
[(1,4), (2,5), (3,6)]
>>> [list(tup) for tup in zip(*X)]
[[1,4], [2,5], [3,6]]

如果内部对绝对需要是列表,那么就使用第二个。

票数 6
EN

Stack Overflow用户

发布于 2010-05-27 22:11:25

如果您正在处理矩阵,那么您几乎肯定应该使用numpy。这将比纯Python代码更容易、更有效地执行数值运算。

代码语言:javascript
复制
>>> x = [[1,2,3], [4,5,6]]
>>> x = numpy.array(x)
>>> x
array([[1, 2, 3],
       [4, 5, 6]])
>>> x.T
array([[1, 4],
       [2, 5],
       [3, 6]])

“不涉及任何库导入”是一个愚蠢的、非生产性的需求。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2921681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档