NumPy Cheat Sheet
NumPy-systemet är ett numeriskt beräkningstillägg med öppen källkod för Python. Detta verktyg kan användas för att lagra och bearbeta stora matriser, vilket är mycket effektivare än Pythons egna nästlade liststruktur (som också kan användas för att representera matriser).
Förklaring
Använd arr för att representera ett numpy-arrayobjekt.
Importera modul
import numpy as npImportera/Exportera
| np.loadtxt(‘file.txt’) | Läs från textfil |
| np.genfromtxt(‘file.csv’,delimiter=’,’) | Läs från CSV-fil |
| np.savetxt(‘file.txt’,arr,delimiter=’ ‘) | Skriv till textfil |
| np.savetxt(‘file.csv’,arr,delimiter=’,’) | Skriv till CSV-fil |
Skapa array
| np.array([1,2,3]) | 1D-array |
| np.array([(1,2,3),(4,5,6)]) | 2D-array |
| np.zeros(3) | 1D-array med längden 3 fylld med nollor |
| np.ones((3,4)) | 3x4-array med alla värden 1 |
| np.eye(5) | 5x5-array med ettor på diagonalen och nollor på andra ställen (enhetsmatris) |
| np.linspace(0,100,6) | Array med 6 värden jämnt fördelade från 0 till 100 |
| np.arange(0,10,3) | Array med värden från 0 till mindre än 10 med steg 3 (t.ex. [0,3,6,9]) |
| np.full((2,3),8) | 2x3-array med alla värden 8 |
| np.random.rand(4,5) | 4x5-array med slumpmässiga flyttal mellan 0-1 |
| np.random.rand(6,7)*100 | 6x7-array med slumpmässiga flyttal mellan 0-100 |
| np.random.randint(5,size=(2,3)) | 2x3-array med slumpmässiga heltal mellan 0-4 |
Inspektera egenskaper
| arr.size | Returnerar det totala antalet element i arrayen |
| arr.shape | Returnerar arrayens dimensioner |
| arr.dtype | Returnerar datatypen för elementen i arrayen |
| arr.astype(dtype) | Konverterar arrayelementens typ till dtype |
| arr.tolist() | Konverterar arrayen till en lista |
| np.info(np.eye) | Visa dokumentation för np.eye |
Kopiera/Sortera/Omforma
| np.copy(arr) | Kopierar arr till nytt minne |
| arr.view(dtype) | Skapar en vy av arr-element med typen dtype |
| arr.sort() | Sorterar arr |
| arr.sort(axis=0) | Sorterar specifik axel för arr |
| two_d_arr.flatten() | Plattar ut en 2D-array till 1D |
| arr.T | Transponerar arr (rader blir kolumner och vice versa) |
| arr.reshape(3,4) | Ändrar formen på arr till 3 rader, 4 kolumner utan att ändra data |
| arr.resize((5,6)) | Ändrar formen på arr till 5x6 och fyller nya värden med 0 |
Lägg till/Ta bort element
| np.append(arr,values) | Lägger till värden i slutet av arr |
| np.insert(arr,2,values) | Infogar värden i arr före index 2 |
| np.delete(arr,3,axis=0) | Tar bort rad vid index 3 i arr |
| np.delete(arr,4,axis=1) | Tar bort kolumn vid index 4 i arr |
Kombinera/Dela
| np.concatenate((arr1,arr2),axis=0) | Lägger till arr2 som rader i slutet av arr1 |
| np.concatenate((arr1,arr2),axis=1) | Lägger till arr2 som kolumner i slutet av arr1 |
| np.split(arr,3) | Delar upp arr i 3 delarrayer |
| np.hsplit(arr,5) | Delar arr horisontellt vid det 5:e indexet |
Indexering/Slicing/Skapa delmängder
| arr[5] | Returnerar elementet vid index 5 |
| arr[2,5] | Returnerar 2D-arrayelementet vid index [2][5] |
| arr[1]=4 | Tilldelar arrayelementet vid index 1 värdet 4 |
| arr[1,3]=10 | Tilldelar arrayelementet vid index [1][3] värdet 10 |
| arr[0:3] | Returnerar elementen vid index 0,1,2 (Pĺ en 2D-array: returnerar raderna 0,1,2) |
| arr[0:3,4] | Returnerar elementen pĺ raderna 0,1,2 i kolumn 4 |
| arr[:2] | Returnerar elementen vid index 0,1 (Pĺ en 2D-array: returnerar raderna 0,1) |
| arr[:,1] | Returnerar elementen vid index 1 pĺ alla rader |
| arr<5 | Returnerar en array med booleska värden |
| (arr1<3) & (arr2>5) | Returnerar en array med booleska värden |
| ~arr | Inverterar en boolesk array |
| arr[arr<5] | Returnerar arrayelement mindre än 5 |
Skalär matematik
| np.add(arr,1) | Lägg till 1 till varje arrayelement |
| np.subtract(arr,2) | Dra ifrån 2 från varje arrayelement |
| np.multiply(arr,3) | Multiplicera varje arrayelement med 3 |
| np.divide(arr,4) | Dividera varje arrayelement med 4 (returnerar np.nan vid division med noll) |
| np.power(arr,5) | Höj upp varje arrayelement till potensen 5 |
Vektormatematik
| np.add(arr1,arr2) | Addera arr2 till arr1 elementvis |
| np.subtract(arr1,arr2) | Subtrahera arr2 från arr1 elementvis |
| np.multiply(arr1,arr2) | Multiplicera arr1 med arr2 elementvis |
| np.divide(arr1,arr2) | Dividera arr1 med arr2 elementvis |
| np.power(arr1,arr2) | Höj upp arr1 till potensen av arr2 elementvis |
| np.array_equal(arr1,arr2) | Returnerar True om arrayerna har samma element och form |
| np.sqrt(arr) | Kvadratroten av varje element i arrayen |
| np.sin(arr) | Sinus för varje element i arrayen |
| np.log(arr) | Naturlig logaritme för varje element i arrayen |
| np.abs(arr) | Absolutvärde för varje element i arrayen |
| np.ceil(arr) | Avrundar uppåt till närmaste heltal |
| np.floor(arr) | Avrundar nedåt till närmaste heltal |
| np.round(arr) | Avrundar till närmaste heltal |
Statistik
| np.mean(arr,axis=0) | Returnerar medelvärdet längs en specifik axel |
| arr.sum() | Returnerar summan av arr |
| arr.min() | Returnerar minimivärdet av arr |
| arr.max(axis=0) | Returnerar maximivärdet för en specifik axel |
| np.var(arr) | Returnerar variansen för arrayen |
| np.std(arr,axis=1) | Returnerar standardavvikelser för en specifik axel |
| arr.corrcoef() | Returnerar korrelationskoefficienten för arrayen |