Λύθηκε: φιλτράρετε όλες τις στήλες στα panda

Στον κόσμο της ανάλυσης δεδομένων, ο χειρισμός μεγάλων συνόλων δεδομένων μπορεί να είναι μια αποθαρρυντική εργασία. Ένα από τα βασικά μέρη αυτής της διαδικασίας είναι το φιλτράρισμα των δεδομένων για τη λήψη των σχετικών πληροφοριών. Όταν πρόκειται για την Python, την ισχυρή βιβλιοθήκη Πάντα έρχεται σε βοήθειά μας. Σε αυτό το άρθρο, θα συζητήσουμε πώς να φιλτράρετε όλες τις στήλες σε ένα pandas DataFrame. Θα προχωρήσουμε σε μια εξήγηση βήμα προς βήμα του κώδικα και θα παρέχουμε μια βαθιά κατανόηση των βιβλιοθηκών και των λειτουργιών που μπορούν να χρησιμοποιηθούν για παρόμοια προβλήματα.

Παρουσιάζουμε τα πάντα

είναι μια βιβλιοθήκη ανοιχτού κώδικα που παρέχει εύχρηστες δομές δεδομένων και εργαλεία ανάλυσης δεδομένων για τη γλώσσα προγραμματισμού Python. Διαδραματίζει σημαντικό ρόλο στο οικοσύστημα της επιστήμης δεδομένων και έχει γίνει ένα απαραίτητο εργαλείο για κάθε επιστήμονα δεδομένων ή αναλυτή που εργάζεται με την Python. Μεταξύ των χαρακτηριστικών του, τα panda προσφέρουν δύο κύριες δομές δεδομένων: Πλαίσιο δεδομένων και Σειρές. Το DataFrame είναι ένας δισδιάστατος πίνακας με επισημασμένους άξονες (γραμμές και στήλες), ενώ μια σειρά είναι ένας μονοδιάστατος πίνακας με ετικέτα.

Για αυτό το άρθρο, θα επικεντρωθούμε στο φιλτράρισμα συγκεκριμένων τιμών που υπάρχουν σε οποιαδήποτε στήλη ενός Pandas DataFrame. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε τα πάντα .isin() λειτουργία μαζί με boolean masking.

Φιλτράρισμα ενός DataFrame

Για να φιλτράρετε ένα DataFrame σε panda, ακολουθήστε τα εξής βήματα:

1. Εισαγάγετε τη βιβλιοθήκη pandas
2. Δημιουργήστε ένα DataFrame ή φορτώστε το από ένα αρχείο
3. Καθορίστε τις τιμές που θέλετε να φιλτράρετε
4. Εφαρμόστε το φίλτρο χρησιμοποιώντας τη συνάρτηση `.isin()` και κάλυψη boolean
5. Εμφανίστε το φιλτραρισμένο DataFrame

Ας βουτήξουμε στον κώδικα για να καταλάβουμε πώς λειτουργεί.

import pandas as pd

# Creating a DataFrame
data = {'Column1': [1, 2, 3, 4, 5],
        'Column2': [10, 20, 30, 40, 50],
        'Column3': ['A', 'B', 'A', 'B', 'A']}
df = pd.DataFrame(data)

# Define the values to filter
filter_values = [1, 3, 5, 'A']

# Apply the filter using .isin() and boolean masking
filtered_df = df[df.isin(filter_values).any(axis=1)]

# Display the filtered DataFrame
print(filtered_df)

Σε αυτό το παράδειγμα, εισάγουμε πρώτα τη βιβλιοθήκη pandas και δημιουργούμε ένα DataFrame με τρεις στήλες. Καθορίζουμε τις τιμές που θέλουμε να φιλτράρουμε (1, 3, 5 και 'A') και εφαρμόζουμε το φίλτρο χρησιμοποιώντας τη συνάρτηση `.isin()` σε συνδυασμό με boolean masking. Η συνάρτηση `οποιοσδήποτε(άξονας=1)` ελέγχει εάν κάποια τιμή σε μια σειρά πληροί τα κριτήρια φιλτραρίσματος. Τέλος, εκτυπώνουμε το φιλτραρισμένο DataFrame.

Η συνάρτηση .isin() και boolean masking

Η .isin() Το function in pandas είναι ένα ευέλικτο εργαλείο για το φιλτράρισμα δεδομένων με βάση μια λίστα ή ένα σύνολο τιμών. Επιστρέφει ένα boolean DataFrame του ίδιου σχήματος με το αρχικό, υποδεικνύοντας ποια στοιχεία υπάρχουν στην παρεχόμενη λίστα ή σύνολο. Στην περίπτωσή μας, περνάμε μια λίστα τιμών που θέλουμε να φιλτράρουμε.

Το Boolean masking είναι μια τεχνική που χρησιμοποιείται στα πάντα για φιλτράρισμα δεδομένων βάσει στοιχείων. Αποτελείται από την εφαρμογή μιας δυαδικής μάσκας (ένας πίνακας τιμών True και False) σε μια δομή δεδομένων για να φιλτράρει τα στοιχεία της. Στο πλαίσιο του προβλήματός μας, χρησιμοποιούμε boolean masking μαζί με τη συνάρτηση .isin() για να ανακτήσουμε σειρές που περιέχουν τις επιθυμητές τιμές.

Με μια ξεκάθαρη κατανόηση της βιβλιοθήκης pandas, των δομών DataFrame και της συνάρτησης .isin(), μπορούμε να φιλτράρουμε αποτελεσματικά οποιοδήποτε pandas DataFrame. Αυτές οι τεχνικές μάς επιτρέπουν να εξερευνήσουμε μεγάλα σύνολα δεδομένων και να εξάγουμε πολύτιμες πληροφορίες με ευκολία, καθιστώντας τα panda μια βασική βιβλιοθήκη για ανάλυση δεδομένων στην Python.

Σχετικές αναρτήσεις:

Αφήστε ένα σχόλιο