2016-04-21 9 views
1

Ich steckte mit einer einfachen Frage in NumPy. Ich habe ein Array von Nullwerten. Sobald ich einen neuen Wert erzeugt habe, möchte ich ihn einzeln hinzufügen.Nullen Array durch neue Werte eins nach dem anderen ersetzen NumPy

arr=array([0,0,0]) 
# something like this 
l=[1,5,10] 
for x in l: 
    arr.append(x) # from python logic 

so würde Ich mag eine durch ein x in Array hinzuzufügen, also würde ich bekommen: 1. Iteration arr=([1,0,0]); 2d Iteration arr=([1,5,0]); 3. arr=([1,5,10]);

Grundsätzlich muss ich in NumPy Nullen mit neuen Werten eins nach dem anderen ersetzen (Ich lerne NumPy !!!!!!). Ich habe viele NumPy Optionen wie np.append überprüft (es fügt zu bestehenden Werten neue Werte hinzu), kann aber nicht das richtige finden.

danke

Antwort

1

Es gibt ein paar Dinge mit numpy zu holen:

  • Sie das Array voller Nullen erzeugen kann mit

    >>> np.zeros(3) 
    array([ 0., 0., 0.]) 
    
  • You/Set bekommen Array-Elemente mit Indizierung wie bei list s etc:

    arr[2] = 7 
    
    for i, val in enumerate([1, 5, 10]): 
        arr[i] = val 
    
  • Oder, wenn Sie wie ein list mit Array mit etwas füllen möchten, können Sie direkt verwenden:

    >>> np.array([1, 5, 10]) 
    array([ 1, 5, 10]) 
    
  • Auch numpy Unterschrift Zeug zu einem Array zum Anfügen ist ein bit different:

    arr = np.append(arr, 7) 
    

Nachdem Sie das gesagt haben, sollten Sie in Betracht ziehen, in einzutauchen.

Verwandte Themen