Wie zu verwenden numpy ist hstack?
Habe ich eine große numpy.ndarray array, das ich extrahieren möchten, der 4. und 5. Spalten und die Spalten in ein 2D-array. Die [i,0] - element sollte der Wert der 4. Spalte und [i,1] sollte das element aus der 5. Spalte.
Ich versuchen, mit numpy.hstack Funktion, dies zu tun.
a = numpy.asarray([1, 2, 3, 4, 5])
for i in range(5):
a = numpy.vstack([a, numpy.asarray([1, 2, 3, 4, 5])])
combined = np.hstack([a[:,3], a[:,4]])
Jedoch, diese einfach gibt mir eine nx1-array. Ich habe versucht mehrere Ansätze mit verketten, die Aussehen wie diese Beispiele:
combined = np.concatenate([a[:,3], a[:,4]])
combined = np.concatenate([a[:,3], a[:,4]], axis=1)
combined = np.concatenate([a[:,3].T, a[:,4].T])
Fühle ich mich wie hstack ist die Funktion die ich will, aber ich kann nicht scheinen, um herauszufinden, wie man es mir eine nx2-array. Kann jemand mich in die richtige Richtung? Jede Hilfe ist willkommen.
- Ein "feature" oder was auch immer mit numpy-arrays ist, dass die Umsetzung (
.T
) ein 1-dimensionales array zurück das gleiche. Wenn Sie wirklich wollen, zu verwendenhstack
, die Sie benötigen, um Ihnen mehrdimensionale ersten (oder verwenden Sieatleast_2d
oder ähnliches), oder verwenden Sievstack
an und transponieren Sie das Ergebnis. - Auch check this out für
np.column_stack
: stackoverflow.com/q/14741061/2379410
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, das wird tun, was Sie wollen:
a[:, 3:5]
gibt eine Ansicht, die nicht eine Kopie des Arrays.Gerade schneiden, Ihre Daten wie folgt:
Ergebnisse in:
Können Sie auch
zip
: