Skip to content

NumPy Cheat Sheet

Το σύστημα NumPy είναι μια επέκταση αριθμητικών υπολογισμών ανοιχτού κώδικα για την Python. Αυτό το εργαλείο μπορεί να χρησιμοποιηθεί για την αποθήκευση και την επεξεργασία μεγάλων μητρών, κάτι που είναι πολύ πιο αποτελεσματικό από τη δομή ένθετων λιστών της ίδιας της Python (η οποία μπορεί επίσης να χρησιμοποιηθεί για την αναπαράσταση μητρών).

Επεξήγηση

Χρησιμοποιήστε το arr για να αναπαραστήσετε ένα αντικείμενο πίνακα numpy.

Εισαγωγή Ενότητας (Module)

import numpy as np

Εισαγωγή/Εξαγωγή

np.loadtxt(‘file.txt’) Ανάγνωση από αρχείο κειμένου
np.genfromtxt(‘file.csv’,delimiter=’,’) Ανάγνωση από αρχείο CSV
np.savetxt(‘file.txt’,arr,delimiter=’ ‘) Εγγραφή σε αρχείο κειμένου
np.savetxt(‘file.csv’,arr,delimiter=’,’) Εγγραφή σε αρχείο CSV

Δημιουργία Πίνακα

np.array([1,2,3]) 1D πίνακας
np.array([(1,2,3),(4,5,6)]) 2D πίνακας
np.zeros(3) 1D πίνακας μήκους 3 με όλα τα στοιχεία μηδέν
np.ones((3,4)) 3x4 πίνακας με όλα τα στοιχεία μονάδα (1)
np.eye(5) 5x5 πίνακας με μονάδες στη διαγώνιο και μηδενικά αλλού (Μοναδιαίος πίνακας)
np.linspace(0,100,6) Πίνακας 6 τιμών με ίση απόσταση από το 0 έως το 100
np.arange(0,10,3) Πίνακας τιμών από το 0 έως λιγότερο από 10 με βήμα 3 (π.χ. [0,3,6,9])
np.full((2,3),8) 2x3 πίνακας με όλα τα στοιχεία 8
np.random.rand(4,5) 4x5 πίνακας τυχαίων αριθμών κινητής υποδιαστολής μεταξύ 0-1
np.random.rand(6,7)*100 6x7 πίνακας τυχαίων αριθμών κινητής υποδιαστολής μεταξύ 0-100
np.random.randint(5,size=(2,3)) 2x3 πίνακας με τυχαίους ακέραιους μεταξύ 0-4

Επιθεώρηση Ιδιοτήτων

arr.size Επιστρέφει τον συνολικό αριθμό των στοιχείων του πίνακα
arr.shape Επιστρέφει τις διαστάσεις του πίνακα
arr.dtype Επιστρέφει τον τύπο των στοιχείων στον πίνακα
arr.astype(dtype) Μετατρέπει τον τύπο των στοιχείων του πίνακα σε dtype
arr.tolist() Μετατρέπει τον πίνακα σε λίστα
np.info(np.eye) Προβολή τεκμηρίωσης για το np.eye

Αντιγραφή/Ταξινόμηση/Αλλαγή Σχήματος (Reshape)

np.copy(arr) Αντιγράφει το arr σε νέα μνήμη
arr.view(dtype) Δημιουργεί μια προβολή (view) των στοιχείων του arr με τύπο dtype
arr.sort() Ταξινομεί το arr
arr.sort(axis=0) Ταξινομεί συγκεκριμένο άξονα του arr
two_d_arr.flatten() Μετατρέπει έναν 2D πίνακα σε 1D
arr.T Αναστρέφει το arr (οι γραμμές γίνονται στήλες και το αντίστροφο)
arr.reshape(3,4) Αλλάζει το σχήμα του arr σε 3 γραμμές, 4 στήλες χωρίς αλλαγή δεδομένων
arr.resize((5,6)) Αλλάζει το σχήμα του arr σε 5x6 και γεμίζει τις νέες τιμές με 0

Προσθήκη/Αφαίρεση Στοιχείων

np.append(arr,values) Προσθέτει τιμές στο τέλος του arr
np.insert(arr,2,values) Εισάγει τιμές στο arr πριν από το δείκτη (index) 2
np.delete(arr,3,axis=0) Διαγράφει τη γραμμή στο δείκτη 3 του arr
np.delete(arr,4,axis=1) Διαγράφει τη στήλη στο δείκτη 4 του arr

Συνδυασμός/Διαχωρισμός

np.concatenate((arr1,arr2),axis=0) Προσθέτει το arr2 ως γραμμές στο τέλος του arr1
np.concatenate((arr1,arr2),axis=1) Προσθέτει το arr2 ως στήλες στο τέλος του arr1
np.split(arr,3) Διαχωρίζει το arr σε 3 υπο-πίνακες
np.hsplit(arr,5) Διαχωρίζει το arr οριζόντια στον 5ο δείκτη

Ευρετηρίαση/Τεμαχισμός (Slicing)/Υποσύνολα

arr[5] Επιστρέφει το στοιχείο στο δείκτη 5
arr[2,5] Επιστρέφει το στοιχείο 2D πίνακα στο δείκτη [2][5]
arr[1]=4 Αναθέτει στο στοιχείο πίνακα στο δείκτη 1 την τιμή 4
arr[1,3]=10 Αναθέτει στο στοιχείο πίνακα στο δείκτη [1][3] την τιμή 10
arr[0:3] Επιστρέφει τα στοιχεία στους δείκτες 0,1,2 (Σε 2D πίνακα: επιστρέφει τις γραμμές 0,1,2)
arr[0:3,4] Επιστρέφει τα στοιχεία στις γραμμές 0,1,2 στη στήλη 4
arr[:2] Επιστρέφει τα στοιχεία στους δείκτες 0,1 (Σε 2D πίνακα: επιστρέφει τις γραμμές 0,1)
arr[:,1] Επιστρέφει τα στοιχεία στο δείκτη 1 σε όλες τις γραμμές
arr<5 Επιστρέφει έναν πίνακα με τιμές boolean
(arr1<3) & (arr2>5) Επιστρέφει έναν πίνακα με τιμές boolean
~arr Αντιστρέφει έναν πίνακα boolean
arr[arr<5] Επιστρέφει στοιχεία πίνακα μικρότερα από 5

Μαθηματικά με Βαθμωτά Μεγέθη (Scalars)

np.add(arr,1) Πρόσθεση 1 σε κάθε στοιχείο του πίνακα
np.subtract(arr,2) Αφαίρεση 2 από κάθε στοιχείο του πίνακα
np.multiply(arr,3) Πολλαπλασιασμός κάθε στοιχείου του πίνακα επί 3
np.divide(arr,4) Διαίρεση κάθε στοιχείου του πίνακα διά 4 (επιστρέφει np.nan για διαίρεση με το μηδέν)
np.power(arr,5) Ύψωση κάθε στοιχείου του πίνακα στην 5η δύναμη

Μαθηματικά με Διανύσματα

np.add(arr1,arr2) Πρόσθεση του arr2 στο arr1 ανά στοιχείο
np.subtract(arr1,arr2) Αφαίρεση του arr2 από το arr1 ανά στοιχείο
np.multiply(arr1,arr2) Πολλαπλασιασμός του arr1 επί το arr2 ανά στοιχείο
np.divide(arr1,arr2) Διαίρεση του arr1 διά του arr2 ανά στοιχείο
np.power(arr1,arr2) Ύψωση του arr1 στη δύναμη του arr2 ανά στοιχείο
np.array_equal(arr1,arr2) Επιστρέφει True αν οι πίνακες έχουν τα ίδια στοιχεία και σχήμα
np.sqrt(arr) Τετραγωνική ρίζα κάθε στοιχείου στον πίνακα
np.sin(arr) Ημίτονο κάθε στοιχείου στον πίνακα
np.log(arr) Φυσικός λογάριθμος κάθε στοιχείου στον πίνακα
np.abs(arr) Απόλυτη τιμή κάθε στοιχείου στον πίνακα
np.ceil(arr) Στρογγυλοποίηση προς τα πάνω στον πλησιέστερο ακέραιο
np.floor(arr) Στρογγυλοποίηση προς τα κάτω στον πλησιέστερο ακέραιο
np.round(arr) Στρογγυλοποίηση στον πλησιέστερο ακέραιο

Στατιστικά Στοιχεία

np.mean(arr,axis=0) Επιστρέφει τη μέση τιμή κατά μήκος συγκεκριμένου άξονα
arr.sum() Επιστρέφει το άθροισμα του arr
arr.min() Επιστρέφει την ελάχιστη τιμή του arr
arr.max(axis=0) Επιστρέφει τη μέγιστη τιμή συγκεκριμένου άξονα
np.var(arr) Επιστρέφει τη διακύμανση (variance) του πίνακα
np.std(arr,axis=1) Επιστρέφει την τυπική απόκλιση (standard deviation) συγκεκριμένου άξονα
arr.corrcoef() Επιστρέφει το συντελεστή συσχέτισης του πίνακα