且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

在numpy矩阵中对字母数字字符串进行排序

更新时间:2023-02-21 14:19:33

排序顺序似乎正确.我建议您检查一下编号:

The sorting order seems to be right. I would recommend you to review your numbering:

1 becomes 01

如果必须保留编号,也可以执行以下操作:

If you have to keep your numbering, you can also do:

key = lambda x: '.'.join(x.split('_')[1:3]).replace('job','').replace('q','')

a[np.argsort([float(key(i)) for i in a[:,0]])]

key()将执行以下操作:

key('BFT_job10_q0') --> 10.
key('BFT_job1_q0')  --> 1.
key('BFT_job13_q1') --> 13.1
key('BFT_job13_q0') --> 13.