2 Listen zu einem 2-diemsionalen np.array zusammen fügen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Millie
User
Beiträge: 4
Registriert: Mittwoch 9. September 2020, 16:22

Hallo liebe Leute,

kann leider keine Lösung finden. Ich würde gerne 2 1-dimensionale Listen in ein 2-dimensionales np.array zusammen führen.

Ich habe 2 Listen z.B.:

Code: Alles auswählen

laenge = [10.5, 7.8, 9.6]
breite = [8.0, 6.3, 8.8]
aus diesen beiden Listen würde ich gerne ein 2-dimensionales numpy Array erstellen. Mein erster Versuch:

Code: Alles auswählen

for i in breite:
    for x in laenge:
        breitLaeng = np.array([i,x])

print(breitLaeng)
Ausgabe: ['9.6', '8.8'] ist also nur die letzte Zeile. Dann dachte ich mit append müßte es klappen:

Code: Alles auswählen

breitLaeng =([])
laenge = [10.5, 7.8, 9.6]
breite = [8.0, 6.3, 8.8]

for i in breite:
    for x in laenge:
        breitLaeng.append(np.array([i,x]))

print(breitLaeng)
Die Ausgabe sind jetzt 3 x das 2-Dimensionale Array hintereinander in einem Array.
Kann mir jemand bitte einen Tipp geben, wie es klappen könnte?
Benutzeravatar
snafu
User
Beiträge: 6867
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Was hindert dich daran, np.array([laenge, breite]) zu benutzen...?
Millie
User
Beiträge: 4
Registriert: Mittwoch 9. September 2020, 16:22

Danke für Deinen Tipp. :)

Leider bekomme ich so keine Wertepaare, wie z.B. breitLaeng([laenge1, breite1], [laenge2, breite2])
Deine Lösung sieht in etwa so aus: breitLaeng([laenge 1 bis laenge n], [breite 1 bis breite n])

Ich benötige aber die Wertepaare. Hast Du dafür vielleicht auch noch einen Tipp?
Sirius3
User
Beiträge: 18272
Registriert: Sonntag 21. Oktober 2012, 17:20

Du willst also die Matrix noch transponieren:

Code: Alles auswählen

np.array([laenge, breite]).T
Millie
User
Beiträge: 4
Registriert: Mittwoch 9. September 2020, 16:22

Prima :lol: das hat geklappt. Was hat es denn mit dem .T auf sich?
Sirius3
User
Beiträge: 18272
Registriert: Sonntag 21. Oktober 2012, 17:20

Das bedeutet `transponieren`, also Spalten mit Reihen austauschen.
Millie
User
Beiträge: 4
Registriert: Mittwoch 9. September 2020, 16:22

verstehe....
Python hat teilweise ganz andere Konzepte als die Sprachen, mit denen ich es sonst so zu tun hatte. Wenn der Kopf davon verklebt ist, sucht man nach den falschen Lösungen..... und wundert sich, dass man nichts findet :(

Vielen Dank
Sirius3
User
Beiträge: 18272
Registriert: Sonntag 21. Oktober 2012, 17:20

Das hat jetzt weniger mit den Konzepten von Python zu tun, als im Speziellen mit numpy.
Antworten