Ce face np.full()
np.full() este varianta generală a lui np.zeros() și np.ones(): alegi tu valoarea cu care se umple tabloul, de exemplu 5, -1 sau np.nan.
Tipul rezultatului este dedus din fill_value: np.full(3, 7) dă întregi, np.full(3, 7.5) dă zecimale. np.full_like(a, valoare) ia forma și tipul de la tabloul a.
Parametri
| Parametru | Descriere |
|---|---|
shape |
Forma: un întreg sau un tuplu. |
fill_value |
Valoarea cu care se umple tabloul. |
dtype |
Tipul elementelor. Implicit, tipul lui fill_value (la full_like, tipul lui a). |
a |
La full_like: tabloul de la care se iau forma și tipul. |
Ce returnează
Un tablou nou, cu toate elementele egale cu fill_value.
Exemple
Exemplul 1: Valoare de pornire pentru toți
Fiecare dintre cei 4 elevi pornește cu nota 5, iar o grilă de 2 x 3 este marcată cu -1 (necompletat).
import numpy as np
note = np.full(4, 5)
print(note, note.dtype)
grila = np.full((2, 3), -1)
print(grila)
medii = np.full(3, np.nan)
print(medii)
Rezultat
[5 5 5 5] int64
[[-1 -1 -1]
[-1 -1 -1]]
[nan nan nan]
Exemplul 2: full_like păstrează tipul
Tabloul de pornire are întregi, deci valoarea 9.99 este trunchiată la 9. Cu dtype=float rămâne 9.99.
import numpy as np
cantitati = np.array([3, 1, 4])
print(np.full_like(cantitati, 9.99))
print(np.full_like(cantitati, 9.99, dtype=float))
Rezultat
[9 9 9]
[9.99 9.99 9.99]
Greșeli frecvente
- Uiți al doilea argument:
np.full((2, 3))dăTypeError, pentru căfill_valueeste obligatoriu. - Pui
np.nancufull_likeîntr-un tablou de întregi. Întregii nu pot ține NaN; dădtype=float.
Comenzi înrudite
np.zeros() și np.ones(): Creează tablouri umplute cu 0 sau cu 1 (sau neinițializate cu np.empty), de forma dorită sau de forma altui tablou.np.eye() și np.identity(): Creează o matrice cu 1 pe diagonală și 0 în rest (matricea identitate).ndarray.dtype: Arată tipul elementelor dintr-un tablou (int64, float64, bool etc.) și câți octeți ocupă fiecare.