Πώς να εντοπίσετε ελλείπουσες τιμές με τη συνάρτηση pandas isna()
Η συνάρτηση Python pandas DataFrame.isna() βοηθά τους χρήστες να εντοπίσουν τα ελλείποντα δεδομένα (NaN ή None) σε ένα DataFrame. Αυτό μπορεί να είναι ιδιαίτερα χρήσιμο για να διαπιστωθεί εάν τα δεδομένα πρέπει να καθαριστούν πριν από την έναρξη της ανάλυσης.
Ποια είναι η σύνταξη για το pandas isna();
Δεδομένου ότι το pandas isna() δεν δέχεται παραμέτρους, η σύνταξή του είναι αρκετά απλή:
DataFrame.isna()pythonΠώς να χρησιμοποιήσετε τη συνάρτηση pandas isna()
Όταν isna() εφαρμόζεται σε ένα DataFrame, δημιουργεί ένα νέο DataFrame με τιμές Boolean. Εάν μια τιμή στο αρχικό DataFrame λείπει (π.χ. έχει επισημανθεί ως NaN ή None), isna() θα εμφανίσει True όπου βρίσκεται η τιμή. Διαφορετικά, η συνάρτηση θα εμφανίσει False.
Εάν, εκτός από τον εντοπισμό NaN ή None τιμών, θέλετε επίσης να τις καταργήσετε, δείτε τη συνάρτηση pandas dropna(). Εάν δεν θέλετε να καταργήσετε αυτές τις τιμές, αλλά να τις αντικαταστήσετε συστηματικά, η συνάρτηση fillna() είναι ένα χρήσιμο εργαλείο για να το κάνετε.
Εντοπισμός ελλειπόντων τιμών σε ένα DataFrame
Το παρακάτω παράδειγμα χρησιμοποιεί ένα DataFrame με δεδομένα σχετικά με διαφορετικά άτομα, όπου ορισμένες πληροφορίες λείπουν.
import pandas as pd
# Create DataFrame example
data = {
'Name': ['Alice', 'Bob', None, 'David'],
'Age': [25, None, 35, 40],
'City': ['Nottingham', 'London', 'Cardiff', None]
}
df = pd.DataFrame(data)
print(df)pythonΤο DataFrame έχει την εξής μορφή:
Name Age City
0 Alice 25.0 Nottingham
1 Bob NaN London
2 None 35.0 Cardiff
3 David 40.0 NoneΟι πληροφορίες που λείπουν έχουν επισημανθεί ως None ή NaN. Για να δείτε ακριβώς ποιες τιμές λείπουν, μπορείτε να καλέσετε isna() στο DataFrame.
# Applying pandas isna()
missing_values = df.isna()
print(missing_values)pythonΗ κλήση της συνάρτησης επιστρέφει ένα νέο DataFrame, όπου οι τιμές που λείπουν από τα αρχικά δεδομένα επισημαίνονται ως True, ενώ οι τιμές που υπάρχουν επισημαίνονται ως False. Ακολουθεί το αποτέλεσμα:
Name Age City
0 False False False
1 False True False
2 True False False
3 False False TrueΜέτρηση του αριθμού των ελλειπόντων τιμών ανά στήλη
Μπορεί επίσης να είναι χρήσιμο να γνωρίζετε πόσες τιμές λείπουν σε κάθε στήλη, ώστε να αποφασίσετε πώς θα τις χειριστείτε. Μπορείτε να χρησιμοποιήσετε isna() μαζί με τη συνάρτηση sum() της Python για να μετρήσετε τον αριθμό των τιμών που λείπουν σε κάθε στήλη.
# Count missing values per column
missing_count = df.isna().sum()
print(missing_count)pythonΑυτό σας δείχνει τον αριθμό των ελλειπόντων τιμών σε κάθε στήλη:
Name 1
Age 1
City 1
dtype: int64