Tipuri de date NumPy
Tipuri de date în Python
În mod implicit, Python are aceste tipuri de date:
strings
- folosit pentru a reprezenta datele textului, textul este dat sub ghilimele. de exemplu. "ABCD"integer
- folosit pentru a reprezenta numere întregi. de exemplu. -1, -2, -3float
- folosit pentru a reprezenta numere reale. de exemplu. 1,2, 42,42boolean
- folosit pentru a reprezenta adevărat sau fals.complex
- folosit pentru a reprezenta un număr în câmpia complexă. de exemplu. 1,0 + 2,0j, 1,5 + 2,5j
Tipuri de date în NumPy
NumPy are câteva tipuri de date suplimentare și se referă la tipuri de date cu un singur caracter, cum ar fi i
pentru numere întregi, u
pentru numere întregi nesemnate etc.
Mai jos este o listă cu toate tipurile de date din NumPy și caracterele utilizate pentru a le reprezenta.
i
- întregb
- booleanu
- număr întreg nesemnatf
- plutic
- plutitor complexm
- timedeltaM
- ora de dateO
- obiectS
- sfoarăU
- șir unicodeV
- bucată de memorie fixă pentru alt tip (nul)
Verificarea tipului de date al unei matrici
Obiectul array NumPy are o proprietate numită dtype
care returnează tipul de date al tabloulului:
Exemplu
Obțineți tipul de date al unui obiect de matrice:
import numpy as np
arr = np.array([1, 2, 3, 4])
print(arr.dtype)
Exemplu
Obțineți tipul de date al unui tablou care conține șiruri:
import numpy as np
arr = np.array(['apple', 'banana', 'cherry'])
print(arr.dtype)
Crearea arăturilor cu un tip de date definit
Folosim array()
funcția pentru a crea tablouri, această funcție poate lua un argument opțional: dtype
care ne permite să definim tipul de date preconizat al elementelor de matrice:
Exemplu
Creați un tablou cu șir de tip de date:
import numpy as np
arr = np.array([1, 2, 3, 4], dtype='S')
print(arr)
print(arr.dtype)
Pentru i
, u
, f
, S
și U
putem defini dimensiunea, de asemenea.
Exemplu
Creați un tablou cu un număr de date de 4 octeți:
import numpy as np
arr = np.array([1, 2, 3, 4], dtype='i4')
print(arr)
print(arr.dtype)
Ce se întâmplă dacă o valoare nu poate fi convertită?
Dacă este dat un tip în care elementele nu pot fi turnate, NumPy va ridica un ValueError.
ValueError: În Python ValueError este ridicat atunci când tipul de argument trecut la o funcție este neașteptat / incorect.
Exemplu
Un șir non-întreg precum „a” nu poate fi convertit în număr întreg (va genera o eroare):
import numpy as np
arr = np.array(['a', '2', '3'], dtype='i')
Conversia tipului de date pe Schițe existente
Cea mai bună modalitate de a schimba tipul de date al unui tablou existent este de a face o copie a tabloului cu astype()
metoda.
astype()
Funcția creează o copie a matrice, și vă permite să specificați tipul de date ca parametru.
Tipul de date poate fi specificat folosind un șir, cum ar fi 'f'
float, 'i'
pentru număr întreg etc. sau puteți utiliza tipul de date direct ca float
pentru float și int
pentru număr întreg.
Exemplu
Schimbați tipul de date de la float la întreg, utilizând 'i'
ca valoare parametru:
import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype('i')
print(newarr)
print(newarr.dtype)
Exemplu
Schimbați tipul de date de la float la întreg, utilizând int
ca valoare parametru:
import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype(int)
print(newarr)
print(newarr.dtype)
Exemplu
Schimbați tipul de date de la un număr întreg la un boolean:
import numpy as np
arr = np.array([1, 0, 3])
newarr = arr.astype(bool)
print(newarr)
print(newarr.dtype)