Numpy 在矩阵中重新排序以将耦合转换为两个单独的部分

Numpy 在矩阵中重新排序以将耦合转换为两个单独的部分,numpy,matrix,numpy-slicing,Numpy,Matrix,Numpy Slicing,对于对称矩阵,我有以下变量顺序约定(因此对于行和列也是如此): 我想对该矩阵进行重新排序,以获得顺序约定: bs1, bs2, bs3, bs4, bs5, ps1, ps2, ps3, ps4, ps5 我不知道如何使用Numpy在二阶约定中直接切片初始矩阵(一阶约定)快速变换 注意:我必须在上重新排列原始矩阵。两个轴(轴=0和轴=1)。 如果有人能耍个花招,我将不胜感激 更新:使用order=[0,2,4,6,8,1,3,5,7,9]修复a=a[:,order]然后b=a[order,:]

对于对称矩阵,我有以下变量顺序约定(因此对于行和列也是如此):

我想对该矩阵进行重新排序,以获得顺序约定:

bs1, bs2, bs3, bs4, bs5, ps1, ps2, ps3, ps4, ps5
我不知道如何使用Numpy在二阶约定中直接切片初始矩阵(一阶约定)快速变换

注意:我必须在上重新排列原始矩阵。两个轴(轴=0和轴=1)。

如果有人能耍个花招,我将不胜感激

更新:使用
order=[0,2,4,6,8,1,3,5,7,9]
修复
a=a[:,order]
然后
b=a[order,:]
就足够了,我想知道是否有更直接的方法

bs1, bs2, bs3, bs4, bs5, ps1, ps2, ps3, ps4, ps5