Ich versuche, Werte zu einem numby Array aufzufüllen. Das Array wird anfänglich mit Einsen gefüllt, und mein Ziel ist es, die Werte von Einsen in bestimmten Indizes mit Werten aus einem anderen Array zu überschreiben.Wie kann ich Werte in Array 1 mit Werten von Array 2 bei Indizes von Array 3 auffüllen?
import numpy as np
# get initial array of ones
mask = np.ones(10)
# get values to overwrite ones at indices
values = [10, 30, 50.5]
# get indices for which values will replace ones
idx_pad = [1, 6, 7]
print(mask)
>> [ 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
Was will ich bekommen ist:
>> [ 1 10 1 1 1 1 30 50.5 1 1 ]
Ich denke, es gibt einen Weg, dies zu tun, um eine OrderedDict
verwenden, obwohl ich immer noch bin versucht, es herauszufinden. Ich bin auch zuversichtlich, dass es eine schnelle Annäherung über numpy
gibt. Ich hoffe, dieses Beispiel auf meinen aktuellen Datensatz anzuwenden, für den len(idx_pad) = 10322
und len(mask) = 69268
. Jede Hilfe wäre willkommen.
'mask [idx_pad] = values'? – Divakar
Ich wusste nicht, dass ich mehrere Indizes verwenden könnte, ich war fälschlicherweise davon ausgegangen, dass nur ein einzelner Wert so übergeben werden könnte. Vielen Dank! Wenn du als Antwort postest, werde ich akzeptieren. – mikey
Würde Sie ermutigen, Ihre Ergebnisse in einem selbst beantworteten Post zu veröffentlichen. – Divakar