python – 按列任意排序矩阵
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 按列任意排序矩阵,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1093字,纯文字阅读大概需要2分钟。
内容图文
![python – 按列任意排序矩阵](/upload/InfoBanner/zyjiaocheng/812/82b9d81624fc477d8c9e8e643dda9bef.jpg)
我有一个矩阵像:
[[col1,col2,col3,col4,col5],
[4,1,3,6,2],
[9,4,1,3,6]]
我想按列任意重新排序矩阵,如:
[[col3,col1,col5,col4,col2],
[3,4,2,6,1],
[1,9,6,3,4]]
我知道如果那将是一行,我可以创建一个订单列表,如order_list = [2,0,4,3,1],然后在order_list中使用list comprehension ordered_list = [old_list [i] for i]但是在这里我我无法想出一种方法来创建嵌套的理解,我在每行执行此操作.
解决方法:
我建议使用numpy的花式索引.
>>> import numpy as np
>>> a = np.array([[4,1,3,6,2], [9,4,1,3,6]])
>>> cols = [2,0,4,3,1]
>>> a.T[cols].T
>>>
array([[3, 4, 2, 6, 1],
[1, 9, 6, 3, 4]])
细节:
>>> a
array([[4, 1, 3, 6, 2],
[9, 4, 1, 3, 6]])
>>> a.T
array([[4, 9],
[1, 4],
[3, 1],
[6, 3],
[2, 6]])
>>> a.T[cols]
array([[3, 1],
[4, 9],
[2, 6],
[6, 3],
[1, 4]])
>>> a.T[cols].T
array([[3, 4, 2, 6, 1],
[1, 9, 6, 3, 4]])
内容总结
以上是互联网集市为您收集整理的python – 按列任意排序矩阵全部内容,希望文章能够帮你解决python – 按列任意排序矩阵所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。