Τύποι Δεδομένων NumPy

Τύποι δεδομένων του Python

Από προεπιλογή, το Python έχει τα εξής τύπους δεδομένων:

  • strings - Για την εκπροσώπηση κειμένων δεδομένων, τα κείμενα περιλαμβάνονται σε εισαγωγικά. Π.χ. "ABCD".
  • integer - Για την εκπροσώπηση ακέραιων. Π.χ. -1, -2, -3.
  • float - Για την εκπροσώπηση πραγματικών αριθμών. Π.χ. 1.2, 42.42.
  • boolean - Για την εκπροσώπηση αληθούς ή ψευδούς. Π.χ. True ή False.
  • complex - Για την εκπροσώπηση αριθμών στο τριγωνικό πλάνο. Π.χ. 1.0 + 2.0j, 1.5 + 2.5j.

Τύποι δεδομένων της NumPy

Η NumPy έχει μερικούς επιπλέον τύπους δεδομένων και αναφέρεται σε αυτούς με χαρακτήρες, όπως i Παρουσιάζει ακέραιους.u Παρουσιάζει ανώνυμα ακέραια.

Ακολουθεί λίστα με όλους τους τύπους δεδομένων της NumPy και τα χαρακτήρες που τα εκπροσωπούν.

  • i - Ακέραιος
  • b - Μοναδικός
  • u - Αναγνωρισμένος ακέραιος
  • f - Απλό πλάνο
  • c - Σύνθετος ακέραιος
  • m - Timedelta
  • M - DateTime
  • O - Αντικείμενα
  • S - Σύμβολα
  • U - Unicode συμβόλα
  • V - Μνήμη μπλοκ με σταθερούς άλλους τύπους (void)

Έλεγχος του τύπου δεδομένων του μαγνητοσκοπίου

Το αντικείμενο NumPy array έχει μια ιδιότητα με το όνομα dtype Η ιδιότητα, η οποία επιστρέφει τον τύπο δεδομένων του μαγνητοσκοπίου:

Παράδειγμα

Ανάκτηση του τύπου δεδομένων του αντικειμένου μαγνητοσκοπίου:

import numpy as np
arr = np.array([1, 2, 3, 4])
print(arr.dtype)

Εκτέλεση Παραδείγματος

Παράδειγμα

Ανάκτηση του τύπου δεδομένων του μαγνητοσκοπίου που περιέχει συμβόλα:

import numpy as np
arr = np.array(['apple', 'banana', 'cherry'])
print(arr.dtype)

Εκτέλεση Παραδείγματος

Δημιουργία μαγνητοσκοπίου με ορισμένο τύπο δεδομένων

Χρησιμοποιούμε array() Η συνάρτηση array() για τη δημιουργία μαγνητοσκοπίου μπορεί να χρησιμοποιήσει προαιρετικούς παραμέτρους:dtypeΕπιτρέπει τη διαμόρφωση του αναμενόμενου τύπου στοιχείων του μαγνητοσκοπίου:

Παράδειγμα

Δημιουργία μαγνητοσκοπίου με αλφαβητικό τύπο δεδομένων:

import numpy as np
arr = np.array([1, 2, 3, 4], dtype='S')
print(arr)
print(arr.dtype)

Εκτέλεση Παραδείγματος

Για iufS και UΜπορούμε επίσης να ορίσουμε το μέγεθος.

Παράδειγμα

Δημιουργία μαγνητοσκοπίου με τύπο δεδομένων 4 byte ολόκληρων αριθμών:

import numpy as np
arr = np.array([1, 2, 3, 4], dtype='i4')
print(arr)
print(arr.dtype)

Εκτέλεση Παραδείγματος

Τι θα συμβεί αν το στοιχείο δεν μπορεί να μετατραπεί;

Εάν δοθεί στοιχείο που δεν μπορεί να μετατραπεί σε τύπο, η NumPy θα προκαλέσει ValueError.

ValueError: Στο Python, αν ο τύπος των παραμέτρων που μεταφέρονται στη συνάρτηση δεν είναι αναμενόμενος ή λάθος, θα προκαλέσει ValueError.

Παράδειγμα

Αδυναμία μετατροπής μη ακέραιων συμβολοσειρών (π.χ. 'a') σε ακέραια (γεννάται σφάλμα):

import numpy as np
arr = np.array(['a', '2', '3'], dtype='i')

Εκτέλεση Παραδείγματος

Μετατροπή του τύπου δεδομένων του υπάρχοντος αριθμητικού

Η καλύτερη μέθοδος για την αλλαγή του τύπου δεδομένων ενός υπάρχοντος αριθμητικού είναι η χρήση astype() η μέθοδος αντιγράφει το αριθμητικό.

astype() Η συνάρτηση δημιουργεί αντίγραφο του αριθμητικού και επιτρέπει τη σύνταξη του τύπου δεδομένων ως παραμέτρου.

Οι τύποι δεδομένων μπορούν να καθοριστούν με字符串, όπως 'f' προσδιορίζει δεκαδικό.'i' προσδιορίζει ακέραιο κ.λπ. ή μπορείτε επίσης να χρησιμοποιήσετε απευθείας τους τύπους δεδομένων, όπως float προσδιορίζει δεκαδικό.int προσδιορίζει ακέραιο.

Παράδειγμα

Με τη χρήση 'i' Ως παράμετρος τιμής, μετατροπή του τύπου δεδομένων από το δεκαδικό σε ακέραιο

import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype('i')
print(newarr)
print(newarr.dtype)

Εκτέλεση Παραδείγματος

Παράδειγμα

Με τη χρήση int Ως παράμετρος τιμής, μετατροπή του τύπου δεδομένων από το δεκαδικό σε ακέραιο

import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype(int)
print(newarr)
print(newarr.dtype)

Εκτέλεση Παραδείγματος

Παράδειγμα

Μετατροπή του τύπου δεδομένων από ακέραιο σε αριθμητικό布尔

import numpy as np
arr = np.array([1, 0, 3])
newarr = arr.astype(bool)
print(newarr)
print(newarr.dtype)

Εκτέλεση Παραδείγματος