• Καλώς ήρθατε στο Μαθήματα Ανάπτυξης Λογισμικού & Κωδικοποίησης.
 

Python NumPy: Δομή Πινάκων (Arrays) – Βασικά και Παραδείγματα

Ξίνηε από Arzuy, Απρ 01, 2025, 11:59

« προηγούενο - εόμνο »

Arzuy


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

Τι είναι η NumPy και οι Πίνακες της;
Η NumPy (Numerical Python) είναι μια βιβλιοθήκη ανοιχτού κώδικα που προσφέρει υποστήριξη για πολυδιάστατους πίνακες και μαθηματικές λειτουργίες. Οι πίνακες της NumPy (arrays) είναι παρόμοιοι με τις λίστες της Python, αλλά πιο αποδοτικοί και κατάλληλοι για μαθηματικές πράξεις.

Για να ξεκινήσουμε, πρέπει πρώτα να εγκαταστήσουμε τη NumPy (αν δεν είναι ήδη εγκατεστημένη):

Κώδικας [Επιογή]
pip install numpy


Δημιουργία Πινάκων NumPy
Ας δούμε πώς μπορούμε να δημιουργήσουμε πίνακες με τη NumPy και τις βασικές της λειτουργίες.

1. Δημιουργία Πίνακα από Λίστα
Μπορούμε να μετατρέψουμε μια λίστα Python σε πίνακα NumPy χρησιμοποιώντας τη συνάρτηση array().

Κώδικας [Επιογή]
import numpy as np

# Δημιουργία μονοδιάστατου πίνακα
lista = [1, 2, 3, 4]
pinakas = np.array(lista)

print(pinakas)  # Έξοδος: [1 2 3 4]
print(type(pinakas))  # Έξοδος: <class 'numpy.ndarray'>


2. Δημιουργία Πολυδιάστατου Πίνακα
Οι πίνακες NumPy μπορούν να είναι πολυδιάστατοι (2D, 3D κ.λπ.).

Κώδικας [Επιογή]
import numpy as np

# Δημιουργία 2D πίνακα
pinakas_2d = np.array([[1, 2, 3], [4, 5, 6]])

print(pinakas_2d)
# Έξοδος:
# [[1 2 3]
#  [4 5 6]]
print("Διαστάσεις:", pinakas_2d.shape)  # Έξοδος: (2, 3)



Βασικές Λειτουργίες με Πίνακες NumPy
1. Αριθμητικές Πράξεις
Οι πίνακες NumPy επιτρέπουν εύκολες μαθηματικές πράξεις στοιχείο-προς-στοιχείο.

Κώδικας [Επιογή]
import numpy as np

pinakas1 = np.array([1, 2, 3])
pinakas2 = np.array([4, 5, 6])

# Πρόσθεση
athroisma = pinakas1 + pinakas2
print("Πρόσθεση:", athroisma)  # Έξοδος: [5 7 9]

# Πολλαπλασιασμός
pollaplasiasmos = pinakas1 * 2
print("Πολλαπλασιασμός:", pollaplasiasmos)  # Έξοδος: [2 4 6]


2. Δημιουργία Πινάκων με Ειδικές Τιμές
Η NumPy προσφέρει συναρτήσεις για τη δημιουργία πινάκων με μηδενικά, μονάδες ή τυχαίες τιμές.

Κώδικας [Επιογή]
import numpy as np

# Πίνακας με μηδενικά
midena = np.zeros((2, 3))
print("Μηδενικά:\n", midena)
# Έξοδος:
# [[0. 0. 0.]
#  [0. 0. 0.]]

# Πίνακας με μονάδες
monades = np.ones((2, 2))
print("Μονάδες:\n", monades)
# Έξοδος:
# [[1. 1.]
#  [1. 1.]]

# Τυχαίος πίνακας
tyxaios = np.random.rand(3)
print("Τυχαίος:", tyxaios)  # Έξοδος: π.χ. [0.23 0.67 0.89]


3. Τεμαχισμός (Slicing) Πινάκων
Μπορούμε να επιλέξουμε τμήματα ενός πίνακα χρησιμοποιώντας τεμαχισμό.

Κώδικας [Επιογή]
import numpy as np

pinakas = np.array([10, 20, 30, 40, 50])

# Επιλογή πρώτων 3 στοιχείων
temaxia = pinakas[:3]
print("Τεμάχια:", temaxia)  # Έξοδος: [10 20 30]

# Επιλογή στοιχείων από το 2ο έως το τέλος
temaxia2 = pinakas[1:]
print("Από 2ο και μετά:", temaxia2)  # Έξοδος: [20 30 40 50]



Χαρακτηριστικά Πινάκων NumPy
  • Διαστάσεις (shape): Υποδεικνύει το μέγεθος του πίνακα (γραμμές, στήλες).
  • Τύπος Δεδομένων (dtype): Καθορίζει τον τύπο δεδομένων (int, float κ.λπ.).
  • Μέγεθος (size): Συνολικός αριθμός στοιχείων.

Παράδειγμα:

Κώδικας [Επιογή]
import numpy as np

pinakas = np.array([[1, 2], [3, 4]])
print("Διαστάσεις:", pinakas.shape)  # Έξοδος: (2, 2)
print("Τύπος δεδομένων:", pinakas.dtype)  # Έξοδος: int64
print("Μέγεθος:", pinakas.size)  # Έξοδος: 4



Συμβουλές για τη Χρήση της NumPy
  • Απόδοση: Οι πίνακες NumPy είναι ταχύτεροι από τις λίστες Python χάρη στη βελτιστοποιημένη εσωτερική υλοποίηση.
  • Μαθηματικές Συναρτήσεις: Χρησιμοποιήστε ενσωματωμένες συναρτήσεις όπως np.sum(), np.mean(), np.max() για γρήγορους υπολογισμούς.
  • Τεκμηρίωση: Εξερευνήστε την επίσημη τεκμηρίωση της NumPy για περισσότερες δυνατότητες.

Συμπέρασμα
Η NumPy είναι απαραίτητη για κάθε προγραμματιστή Python που ασχολείται με αριθμητικά δεδομένα. Σε αυτό το άρθρο, εξετάσαμε τη βασική δομή των πινάκων, τη δημιουργία τους και τον χειρισμό τους με παραδείγματα κώδικα. Δοκιμάστε τα παραδείγματα μόνοι σας και πειραματιστείτε για να ανακαλύψετε τις δυνατότητες της NumPy!