python打印输出不一致

SheerKahn

(Python 2.7.12)-我创建了一个NxN数组,当我打印它时,我得到以下确切的输出:

样品a

SampleArray=np.random.randint(1,100, size=(5,5))    
    [[49 72 88 56 41]
     [30 73  6 43 53]
     [83 54 65 16 34]
     [25 17 73 10 46]
     [75 77 82 12 91]]
  • 干净整洁。

但是,当我使用代码按第4列中的元素对该数组进行排序时:

SampleArray=sorted(SampleArray, key=lambda x: x[4])

我得到以下输出:

样本b:

[array([90,  9, 77, 63, 48]), array([43, 97, 47, 74, 53]), array([60, 64, 97,  2, 73]), array([34, 20, 42, 80, 76]), array([86, 61, 95, 21, 82])]

如何使输出保持为“样本a”的格式。如果我能在直列中看到数字,将使调试变得更加容易。

罗曼·佩列赫雷斯特

只需使用numpy.argsort()例程:

import numpy as np

a = np.random.randint(1,100, size=(5,5))
print(a)   # initial array
print(a[np.argsort(a[:, -1])])  # sorted array

输出为# initial array

[[21 99 34 33 55]
 [14 81 92 44 97]
 [68 53 35 46 22]
 [64 33 52 40 75]
 [65 35 35 78 43]]

输出为# sorted array

[[68 53 35 46 22]
 [65 35 35 78 43]
 [21 99 34 33 55]
 [64 33 52 40 75]
 [14 81 92 44 97]]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章