Hi
ich sehe mal wieder den Wald vor lauter Bäumen nicht und hänge wieder an einer Grundlagen-Frage.
Bsp.
x = [[1,2,0],[4,5,0],[7,8,0]]
y = [3,6,9]
Ziel = [[1,2,3],[4,5,6],[7,8,9]]
Wie bekomme ich es hin, die 3 Spalte zu entfernen und y als 3. an zu hängen?
Spalte in einer Liste ersetzen
@smith0815: Eine Spalte gibt es im Grunde ja nicht. In Listenterminologie willst Du das 3. Element von jeder Liste ersetzen. Das geht mit einer Schleife und `zip()` bzw. `itertools.izip()` eigentlich ganz einfach.
Hallo,
ich muss gestehen, von numpy habe ich keine große Ahnung...
Mit Boardmitteln, so wie BlackJack bereits vorgeschlagen hat, kannst Du das solösen.
mutetella
ich muss gestehen, von numpy habe ich keine große Ahnung...
Mit Boardmitteln, so wie BlackJack bereits vorgeschlagen hat, kannst Du das so
Code: Alles auswählen
In [345]: x = [[1, 2, 0], [4, 5, 0], [7, 8, 0]]
In [346]: y = [3, 6, 9]
In [347]: for xx, yy in zip(x, y):
.....: xx[2] = yy
.....:
.....:
In [348]: x
Out[348]: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit )
@smith0815: Also transformieren, anhängen, und zurück transformieren klingt irgendwie umständlich!? Und was genau ist „anhängen” hier? In Deinem Beispiel ist ja nur ersetzen gefordert und das ist eine einfache Zuweisung auf das entsprechende Unter-Array:
Code: Alles auswählen
In [62]: x
Out[62]:
array([[1, 2, 0],
[4, 5, 0],
[7, 8, 0]])
In [63]: y
Out[63]: [3, 6, 9]
In [64]: x[...,2] = y
In [65]: x
Out[65]:
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])