Pandas Qcut

Pandas Qcut



'Το 'Python' περιέχει πολλές βιβλιοθήκες και όταν θέλουμε να αναλύσουμε ή να χειριστούμε δεδομένα, τότε χρησιμοποιούμε αυτές τις βιβλιοθήκες 'Python' και τα 'pandas' είναι επίσης η βιβλιοθήκη του. Η βιβλιοθήκη «pandas» χρησιμοποιείται στον τομέα των επιστημών δεδομένων και επίσης χρησιμοποιείται σε δραστηριότητες μηχανικής μάθησης. Το DataFrame 'pandas' μας βοηθά στην αποθήκευση των δεδομένων. Στα 'pandas', όταν θέλουμε δέσμευση δεδομένων, τότε χρησιμοποιούμε τη μέθοδο 'qcut()'. Η μέθοδος 'qcut()' χρησιμοποιείται για τη μετατροπή συνεχών χαρακτηριστικών σε κατηγορικά. Μπορούμε να προσθέσουμε διαφορετικούς τύπους παραμέτρων σε αυτή τη μέθοδο 'qcut()' για να λάβουμε διαφορετικούς τύπους αποτελεσμάτων. Αυτό το σεμινάριο αφορά τη μέθοδο 'qcut()' και θα εξηγήσουμε με πλήρη λεπτομέρεια τη μέθοδο 'qcut()' εδώ. Θα σας εξηγήσουμε πώς κάνουμε τη δέσμευση δεδομένων με τη βοήθεια της συνάρτησης 'qcut()' στα 'pandas' σε αυτό το σεμινάριο.'

Παράδειγμα #01

Θα εφαρμόσουμε τη μέθοδο 'qcut()' σε αυτούς τους κωδικούς και θα κάνουμε αυτούς τους κωδικούς στην εφαρμογή 'Spyder'. Όταν πρέπει να δουλέψουμε με τα 'pandas', μπορούμε να έχουμε πρόσβαση στις λειτουργίες του μόνο όταν εισάγουμε τη βιβλιοθήκη 'pandas' στους κώδικές μας. Πρώτα, βάζουμε 'εισαγωγή' και μετά γράφουμε 'pandas ως pd'. Τώρα, πρέπει να εφαρμόσουμε τη μέθοδο 'qcut()', οπότε για αυτό, δημιουργούμε το DataFrame εδώ. Κατασκευάζουμε το 'Random_df' που περιέχει τις στήλες 'R_ID, R_name και R_age', και επίσης στο 'R_ID', τοποθετούμε 'R_17, R_21, R_24, R_29, R_31, R_34, R_44, R_46, R_50, R_51, R_5, R_61, R_73 και R_81”. Στη συνέχεια προσθέτουμε 'Theodore, Teddy, Noah, Leo, Ivy, Henry, Freddie, Evelyn, Ava, Willow, Theo, Oscar, Jacob και Harper' στη στήλη 'R_name'. Μετά από αυτό, εισάγουμε '21, 33, 12, 43, 22, 7, 21, 51, 72, 19, 10, 9, 37 και 40' στη στήλη 'R_age'. Τώρα, χρησιμοποιούμε το 'print(),' που περιέχει το 'Random_df' και θα βοηθήσει στην απόδοση του DataFrame 'Random_df'. Μόλις δημιουργήσαμε το DataFrame και δεν εφαρμόζουμε ακόμη τη μέθοδο 'qcut()'.








Το εικονίδιο 'Εκτέλεση' μας βοηθά στην εκτέλεση των κωδικών. Όταν πατήσουμε αυτό το εικονίδιο 'run', τότε το αποτέλεσμα αυτού του κωδικού εμφανίζεται στο τερματικό της εφαρμογής 'Spyder'. Το 'Random_df' DataFarme εμφανίζεται ως το αποτέλεσμα του κώδικα που έχουμε γράψει σε αυτό το παράδειγμα. Τώρα, θα εφαρμόσουμε τη μέθοδο 'qcut()' και θα δείξουμε επίσης το αποτέλεσμά της.




Εδώ δεσμεύουμε τα δεδομένα. Συνδυάζουμε τη στήλη 'R_age' και τοποθετούμε τη μέθοδο 'pd.qcut()', η οποία είναι η μέθοδος των 'pandas' που βοηθά στη δέσμευση δεδομένων. Σε αυτή τη μέθοδο, εισάγουμε το όνομα του DataFrame και επίσης το όνομα της στήλης στην οποία θέλουμε να εφαρμόσουμε αυτή τη μέθοδο 'qcut()'. Ορίσαμε επίσης την τιμή του 'q' στο '5' και χρησιμοποιείται για την κοπή των δεδομένων της στήλης 'R_age' σε πέντε ίσα ποσά. Προσθέτουμε τη μέθοδο 'qcut()' στο 'print()', έτσι θα εμφανίσει επίσης τα δεδομένα binning στο τερματικό.




Εδώ, εμφανίζονται τα δεδομένα μετά το binning, και κόβει το 'R_age' σε πέντε ποσοστά. Εμφανίζει επίσης τις κατηγορίες στις οποίες είναι δεσμευμένα τα δεδομένα της στήλης 'R_age'. Η κατηγορική σειρά αντιπροσωπεύει τους κάδους 'R_age'.






Μπορούμε επίσης να προσαρμόσουμε την ετικέτα για αυτούς τους κάδους. Προσθέτουμε αυτές τις ετικέτες κάδου για να διευκολύνουμε την ερμηνεία τους. Προσθέτουμε μια στήλη 'R_age_qcut' στο 'Random_df' στην οποία προσθέτουμε τις ετικέτες αυτών των δοχείων. Χρησιμοποιούμε ξανά τη μέθοδο 'pd.qcut()' για την επισήμανση τους. Προσθέτουμε τις ετικέτες που είναι 'λίγο, όχι τόσο λίγο, μέτριο, υψηλό και υψηλότερο' σε αυτό. Στη συνέχεια βάζουμε ξανά το 'Random_df' στο 'print()'.


Όλοι οι κάδοι φέρουν ετικέτα και παρουσιάζονται σε αυτό το αποτέλεσμα. Η στήλη 'R_age_qcut' εμφανίζεται σε αυτό το DataFrame, στην οποία εμφανίζονται οι θήκες με ετικέτα.



Παράδειγμα #02

Για τη δημιουργία του DataFrame, προσθέτουμε πρώτα «βαθμούς», οι οποίοι είναι «3, 6, 8, 7, 2, 5, 1, 9, 4, 7 και 8». Στη συνέχεια, προσθέτουμε ονόματα μαθητών στους «μαθητές», που είναι «Πίτερ, Μπρόμλεϊ, Τζέιμς, Ντέιβιντ, Σύμμαχοι, Τζον, Τζέιμς, Σάμουελ, Γουίλιαμ, Χάουαρντ και Αλέξανδρος». Στη συνέχεια, δημιουργούμε το 'Grades_df' όπου έχουμε προσθέσει τη μέθοδο 'pd.DataFrame()' και σε αυτήν τη μέθοδο βάζουμε το 'Std_name', το οποίο θα εμφανίζεται ως το όνομα της στήλης και εκχωρούμε τιμές 'students' σε αυτό. Στη συνέχεια ορίζουμε το “Students_grades” ως το όνομα της στήλης του DataFrame και επίσης εκχωρούμε “βαθμούς” εδώ, που δημιουργήσαμε παραπάνω. Μετά από αυτό, έχουμε το “print()” στο οποίο προσθέτουμε το “Grades_df” για εκτύπωση.


Το DataFrame που περιέχει δύο στήλες εμφανίζεται στο αποτέλεσμα αυτού του κώδικα. Τώρα, θα εφαρμόσουμε τη μέθοδο 'qcut()' στη στήλη 'Students_grades' για τη δέσμευση των δεδομένων των τιμών αυτής της στήλης.


Προσθέτουμε μια νέα στήλη 'βαθμός' εδώ στην οποία έχουμε εφαρμόσει το 'pd.qcut()' στη στήλη 'Students_grades' και επίσης χρησιμοποιήσαμε το '4' για την τιμή του 'q', οπότε θα κόψει τα δεδομένα σε τέσσερα ίσα ποσά. Μετά από αυτό, καθορίζουμε αυτά τα ποσοστά εδώ τοποθετώντας τιμές στο 'q', οι οποίες είναι '0, .4, .8 και 1'. Στη συνέχεια, εμφανίζουμε και αυτό. Τώρα, επισημαίνουμε αυτά τα δεσμευμένα δεδομένα και οι ετικέτες που προσθέτουμε εδώ είναι 'D, C, A και B' και αποθηκεύονται επίσης στη στήλη 'βαθμός'.


Εδώ, τα δεδομένα μετά τη δέσμευση εμφανίζονται εδώ στη στήλη 'βαθμός' και κόβει τα δεδομένα της στήλης 'Μαθητές_βαθμίδες' σε τέσσερα ίσα ποσά.


Το DataFrame που λαμβάνουμε μετά την εφαρμογή της μεθόδου 'qcut()' και τον καθορισμό των τεσσάρων εμφανίζεται σε αυτό το αποτέλεσμα.


Τώρα, μετά την προσθήκη των ετικετών σε αυτούς τους κάδους, αποδίδονται επίσης σε αυτό το αποτέλεσμα στη στήλη 'βαθμός' και μπορείτε να δείτε ότι εκχωρεί τις ετικέτες σύμφωνα με τις τιμές του κάδου.

Παράδειγμα #03

Μπορούμε επίσης να εφαρμόσουμε τη μέθοδο “qcut()” στα δεδομένα του αρχείου CSV. Για αυτό, πρώτα διαβάζουμε τα δεδομένα του αρχείου CSV με τη βοήθεια της μεθόδου «read_csv()». Διαβάζουμε τα δεδομένα του αρχείου “office2.csv” και στη συνέχεια τα δεδομένα αυτού του αρχείου τοποθετούνται στο “Office_df”. Αυτή η μέθοδος θα μετατρέψει τα δεδομένα του αρχείου 'office2' στο DataFrame και θα τα αποθηκεύσει στο 'Office_df'. Στη συνέχεια, εμφανίζουμε επίσης αυτά τα δεδομένα βάζοντας το 'Office_df' στο 'print()'. Μετά από αυτό, προσθέτουμε μια νέα στήλη που ονομάζεται 'Units_qcut', στην οποία εφαρμόζουμε τη συνάρτηση 'pd.qcut()' στη στήλη 'Units'.

Επιπλέον, ορίζουμε την τιμή της μεταβλητής «q» σε «5», η οποία θα διαιρέσει τα δεδομένα σε πέντε ίσα ποσοστά. Τα δεδομένα, μετά την κοπή σε 5 ίσα ποσά, αποθηκεύονται στη στήλη 'Units_qcut' και αυτή η στήλη προστίθεται επίσης στο 'Office_df' και το 'Office_df' αποδίδεται ξανά εδώ χρησιμοποιώντας το 'print()'. Τώρα προσθέτουμε ετικέτες σε αυτά τα δεσμευμένα δεδομένα, προσθέτοντας τις ετικέτες στη μέθοδο 'qcut()', οι οποίες είναι 'Μονάδα 1, Μονάδα 2, Μονάδα 3, Μονάδα 4 και Μονάδα 5' και τις αποθηκεύουμε επίσης στη στήλη 'Ετικέτες' . Αποδίδουμε επίσης αυτό το DataFrame στο οποίο προστίθεται η στήλη 'Ετικέτες'.


Τα δεδομένα που λαμβάνουμε μετά την ανάγνωση του αρχείου 'office2.csv' αποδίδονται εδώ με τη μορφή DataFrame. Στη συνέχεια προστίθεται η στήλη 'Units_qcut', στην οποία εμφανίζονται οι δεσμευμένες τιμές της στήλης 'Units'. Μετά από αυτό, προστίθεται επίσης η στήλη 'Ετικέτες', η οποία εκχωρεί τις ετικέτες σε αυτές τις δεσμευμένες τιμές. Όλα αυτά γίνονται χρησιμοποιώντας τη μέθοδο 'qcut()' στα 'pandas'.

συμπέρασμα

Έχουμε εξηγήσει τη μέθοδο 'qcut()' λεπτομερώς σε αυτό το σεμινάριο, η οποία βοηθά στη δέσμευση των δεδομένων στα 'pandas'. Συζητήσαμε ότι τα δεδομένα είναι δεσμευμένα σύμφωνα με την τιμή του quantile 'q' που έχουμε προσθέσει στη μέθοδο 'qcut()' και επίσης έχουμε προσαρμόσει τις ετικέτες σε αυτά τα binned δεδομένα. Εξερευνήσαμε τη μέθοδο 'qcut()' και εφαρμόσαμε αυτήν τη μέθοδο στις στήλες του DataFrame, και επίσης εφαρμόσαμε αυτήν τη μέθοδο 'qcut()' στα δεδομένα του αρχείου CSV μετά την ανάγνωση των αρχείων CSV. Παρουσιάσαμε το αποτέλεσμα όλων των κωδικών σε αυτό το σεμινάριο για να εξηγήσουμε και να δείξουμε με σαφήνεια το αποτέλεσμα της μεθόδου 'qcut()'.