是否有任何优雅的方式来利用print numpy.array
的正确间距功能来获得二维数组,并使用正确的标签进行正确对齐?例如,给定一个有4行和5列的数组,我该如何提供数组和适当大小的与行和列列相对应的列表来生成一些看起来像这样的输出?如何使用(文本)行和列标签打印对齐的numpy数组?
A B C D E
Z [[ 85 86 87 88 89]
Y [ 90 191 192 93 94]
X [ 95 96 97 98 99]
W [100 101 102 103 104]]
如果我天真的尝试:
import numpy
x = numpy.array([[85, 86, 87, 88, 89], \
[90, 191, 192, 93, 94], \
[95, 96, 97, 98, 99], \
[100,101,102,103,104]])
row_labels = ['Z', 'Y', 'X', 'W']
print " A B C D E"
for row, row_index in enumerate(x):
print row_labels[row_index], row
我得到:
A B C D E
Z [85 86 87 88 89]
Y [90 191 192 93 94]
X [95 96 97 98 99]
W [100 101 102 103 104]
有什么办法,我可以得到的东西智能排队?如果有更好的方法来解决我的问题,我绝对愿意使用任何其他库。