Python中文
首页
教程
问答
标签
搜索
登录
注册
Python中移动矩阵行的最快方法
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个4x4矩阵,如下所示:</p> <pre><code>1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 </code></pre> <p>我想根据行索引的数量向左移动每一行(左循环移动)。即第0行保持原样,第1行向左移动1,第2行向左移动2,等等</p> <p>所以我们得到这个:</p> <pre><code>1 2 3 4 6 7 8 5 11 12 9 10 16 13 14 15 </code></pre> <p>我在Python中想出的最快的方法是:</p> <pre class="lang-py prettyprint-override"><code>import numpy as np def ShiftRows(x): x[1:] = [np.append(x[i][i:], x[i][:i]) for i in range(1, 4)] return x </code></pre> <p>我需要像这样在数千个4x4矩阵上运行这个函数,所以速度很重要(在Python中尽可能)。我不关心使用其他模块,比如numpy,我只关心速度</p> <p>任何帮助都将不胜感激</p> <p>谢谢大家!</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您不介意硬编码数组大小,在我的测试中,硬编码重排模式的速度大约是硬编码的6倍:</p> <pre><code>def rot(a): return a.take((0,1,2,3,5,6,7,4,10,11,8,9,15,12,13,14)).reshape(4, 4) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何合并多个PDF文件?
2 回答
如何合并多个xarray数据变量及其坐标?
1 回答
如何合并多个列中具有重复值的行
5 回答
如何合并多个唯一id
4 回答
如何合并多个图纸并使用图纸名称的名称重命名列名?
8 回答
如何合并多个字典并添加同一个键的值?(Python)
10 回答
如何合并多个搜索结果文件(pkl)以将它们全部打印在一起?
4 回答
如何合并多个数据帧
8 回答
如何合并多个数据帧并使用Pandas为假人添加列?
4 回答
如何合并多个数据帧并按时间戳排序
8 回答
如何合并多个数据帧的列表并用另一个lis标记每列
4 回答
如何合并多个数据框中的列
9 回答
如何合并多个文件?
3 回答
如何合并多个查询集?
2 回答
如何合并多个绘图?
10 回答
如何合并多个词典
4 回答
如何合并多个输入数据集(数据帧)?
2 回答
如何合并多条记录中拆分的文本行
1 回答
如何合并多索引列datafram
7 回答
如何合并多级(即多索引)数据帧?
3 回答