NumPy datatyper
- Forrige Side NumPy array klipning
- Næste Side NumPy kopi/visning
DataTyper i Python
Som standard har Python følgende dataTyper:
strings
- Bruges til at repræsentere tekstdata, tekst omgivet af citationstegn. For eksempel "ABCD".integer
- Bruges til at repræsentere heltal. For eksempel -1, -2, -3.float
- Bruges til at repræsentere reelle tal. For eksempel 1.2, 42.42.boolean
- Bruges til at repræsentere True eller False.complex
- Bruges til at repræsentere tal i komplekse planer. For eksempel 1.0 + 2.0j, 1.5 + 2.5j.
DataTyper i NumPy
NumPy har nogle ekstra dataTyper, og de refereres gennem et tegn til dataTypen, for eksempel i
Repræsenterer heltal,u
Repræsenterer unsigned integers osv.
Her er en liste over alle dataTyper i NumPy samt de karakterer, der bruges til at repræsentere dem.
i
- Heltalb
- Boolesku
- Udgyldige heltalf
- Flydende talc
- Kombineret flydende talm
- TidsintervalM
- DatotidO
- ObjektS
- StrengU
- Unicode strengV
- Fast blok af andre typer hukommelse ( void )
Tjek datatypen for arrayen
NumPy-arrayobjektet har en navn dtype
ets egenskab, som returnerer arrayets datatype:
Eksempel
Få datatypen for en arrayobjekt:
import numpy as np arr = np.array([1, 2, 3, 4]) print(arr.dtype)
Eksempel
Få datatypen for en array, der indeholder strenge:
import numpy as np arr = np.array(['apple', 'banana', 'cherry']) print(arr.dtype)
Opret en array med en defineret datatype
Vi bruger array()
Funktionen til at oprette en array, som kan bruge valgfri parametre:dtype
,den giver os mulighed for at definere den forventede datatype for arrayelementer:
Eksempel
Opret en array med en datatypestringsopgave:
import numpy as np arr = np.array([1, 2, 3, 4], dtype='S') print(arr) print(arr.dtype)
For i
、u
、f
、S
og U
,vi kan også definere størrelse.
Eksempel
Opret en array med data类型 4 byte integers:
import numpy as np arr = np.array([1, 2, 3, 4], dtype='i4') print(arr) print(arr.dtype)
Hvad hvis værdien ikke kan konverteres?
Hvis elementtypen ikke kan tværsættes, vil NumPy udløse en ValueError.
ValueError: I Python utlöses ValueError om den typ av parameter som överförs till en funktion inte är förväntad eller felaktig.
Eksempel
Kan ikke konvertere icke-heltalsstrengar (som 'a') til heltal (vil kasta ett fel):
import numpy as np arr = np.array(['a', '2', '3'], dtype='i')
Konvertera datatypen på ett befintligt array
Det bedste sätt att ändra datatypen på ett befintligt array är att använda astype()
metoden kopierer arrayet.
astype()
Funktionen opretter en kopi af arrayet og lader dig specificere datatypen som parameter.
Datatyper kan specificeres som strenge, for eksempel 'f'
betyder brøketal,'i'
betyder heltal osv. Eller du kan også bruge datatyper direkte, for eksempel float
betyder brøketal,int
betyder heltal.
Eksempel
Ved at bruge 'i'
Som parameterværdi ændr datatypen fra brøketal til heltal:
import numpy as np arr = np.array([1.1, 2.1, 3.1]) newarr = arr.astype('i') print(newarr) print(newarr.dtype)
Eksempel
Ved at bruge int
Som parameterværdi ændr datatypen fra brøketal til heltal:
import numpy as np arr = np.array([1.1, 2.1, 3.1]) newarr = arr.astype(int) print(newarr) print(newarr.dtype)
Eksempel
Ændr datatypen fra heltal til boolesk værdi:
import numpy as np arr = np.array([1, 0, 3]) newarr = arr.astype(bool) print(newarr) print(newarr.dtype)
- Forrige Side NumPy array klipning
- Næste Side NumPy kopi/visning