Wie Drucke ich eine ausgerichtet numpy-array mit (text -) Zeilen-und Spaltenbeschriftungen?

Gibt es irgendeine elegante Art und Weise zu nutzen, die den korrekten Abstand feature von print numpy.array um ein 2D-array, mit den richtigen labels, die richtet, richtig? Zum Beispiel, angenommen ein array mit 4 Zeilen und 5 Spalten, wie kann ich das array und von geeigneter Größe, in Listen entsprechend der Zeilen-und Spalten-header zu erzeugen eine Ausgabe, die so aussieht?

      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]]

Wenn ich naiv versuchen:

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

Bekomme ich:

      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]

Gibt es eine Möglichkeit, ich kann die Dinge, um line-up intelligent? Ich bin auf jeden Fall offen mit jeder anderen Bibliothek, wenn es einen besseren Weg gibt mein problem zu lösen.

InformationsquelleAutor williampli | 2011-02-19
Schreibe einen Kommentar