Ο καθαρισμός δεδομένων απαιτεί αναμφίβολα πολύ χρόνο στην επιστήμη δεδομένων και η έλλειψη δεδομένων είναι μία από τις προκλήσεις που θα αντιμετωπίζετε συχνά. Το pandas είναι ένα πολύτιμο εργαλείο χειρισμού δεδομένων Python που σας βοηθά να διορθώσετε τις τιμές που λείπουν στο σύνολο δεδομένων σας, μεταξύ άλλων.
Μπορείτε να διορθώσετε τα δεδομένα που λείπουν είτε αποθέτοντας είτε συμπληρώνοντάς τα με άλλες τιμές. Σε αυτό το άρθρο, θα εξηγήσουμε και θα εξερευνήσουμε τους διαφορετικούς τρόπους συμπλήρωσης δεδομένων που λείπουν χρησιμοποιώντας τα πάντα.
1. Χρησιμοποιήστε τη μέθοδο fillna():
ο fillna() Η συνάρτηση επαναλαμβάνεται μέσω του συνόλου δεδομένων σας και γεμίζει όλες τις μηδενικές σειρές με μια καθορισμένη τιμή. Αποδέχεται ορισμένα προαιρετικά επιχειρήματα—λάβετε υπόψη τα ακόλουθα:
αξία: Αυτή είναι η τιμή που θέλετε να εισαγάγετε στις σειρές που λείπουν.
Μέθοδος: Σας επιτρέπει να συμπληρώσετε τις τιμές που λείπουν προς τα εμπρός ή προς τα πίσω. Δέχεται α "γέμισμα" ή "γεμίζω" παράμετρος.
Στη θέση: Αυτό δέχεται μια δήλωση υπό όρους. Εάν είναι True, τροποποιεί μόνιμα το DataFrame. Διαφορετικά, δεν το κάνει.
Πριν ξεκινήσουμε, βεβαιωθείτε ότι έχετε εγκαταστήσει panda στο δικό σας Εικονικό περιβάλλον Python χρησιμοποιώντας κουκούτσι στο τερματικό σας:
pip install panda
Στη συνέχεια, μέσα στο σενάριο Python, θα δημιουργήσουμε μια πρακτική DataFrame και θα εισαγάγουμε μηδενικές τιμές (Nan) σε μερικές σειρές:
εισαγωγή παντα
df = πάντα. DataFrame({'A' :[0, 3, None, 10, 3, None],
'Β': [Κανένα, Κανένα, 7.13, 13.82, 7, 7],
'C': [Κανένα, "Pandas", Κανένα, "Pandas", "Python", "JavaScript"]})
Σχετίζεται με:Πώς να εισαγάγετε δεδομένα του Excel σε σενάρια Python χρησιμοποιώντας Panda
Τώρα, ελέγξτε πώς μπορείτε να συμπληρώσετε αυτές τις τιμές που λείπουν χρησιμοποιώντας τις διάφορες διαθέσιμες μεθόδους στα πάντα.
Αυτή η μέθοδος περιλαμβάνει την αντικατάσταση τιμών που λείπουν με υπολογισμένους μέσους όρους. Η συμπλήρωση των δεδομένων που λείπουν με μια μέση ή διάμεση τιμή ισχύει όταν οι εμπλεκόμενες στήλες έχουν ακέραιους ή κινητήριους τύπους δεδομένων.
Μπορείτε επίσης να συμπληρώσετε δεδομένα που λείπουν με την τιμή λειτουργίας, η οποία είναι η πιο συχνή τιμή. Αυτό ισχύει επίσης για ακέραιους αριθμούς ή πλωτήρες. Αλλά είναι πιο εύχρηστο όταν οι εν λόγω στήλες περιέχουν συμβολοσειρές.
Δείτε πώς μπορείτε να εισαγάγετε τη μέση και τη διάμεσο στις σειρές που λείπουν στο DataFrame που δημιουργήσατε νωρίτερα:
#Για να εισαγάγετε τη μέση τιμή κάθε στήλης στις σειρές που λείπουν:
df.fillna (df.mean().round (1), inplace=True)
#Για διάμεσο:
df.fillna (df.median().round (1), inplace=True)
εκτύπωση (df)
Η εισαγωγή της τροπικής τιμής όπως κάνατε για τη μέση και τη διάμεσο παραπάνω δεν καταγράφει ολόκληρο το DataFrame. Αλλά μπορείτε να το εισαγάγετε σε μια συγκεκριμένη στήλη αντί, για παράδειγμα, στη στήλη ντο:
df['C'].fillna (df['C'].mode()[0], inplace=True)
Με αυτά τα λόγια, είναι ακόμα δυνατό να εισαγάγετε την τιμή του τρόπου λειτουργίας κάθε στήλης στις σειρές που λείπουν ταυτόχρονα χρησιμοποιώντας έναν βρόχο for:
για το i στις στήλες df.:
df[i].fillna (df[i].mode()[0], inplace=True)
εκτύπωση (df)
Εάν θέλετε να είστε συγκεκριμένοι για τη στήλη κατά την εισαγωγή του μέσου όρου, του μέσου όρου ή της λειτουργίας:
df.fillna({"A":df['A'].mean(),
"B": df['B'].median(),
"C": df['C'].mode()[0]},
inplace=True)
εκτύπωση (df)
Συμπληρώστε τις μηδενικές γραμμές με τιμές χρησιμοποιώντας το ffill
Αυτό περιλαμβάνει τον καθορισμό της μεθόδου πλήρωσης μέσα ως το fillna() λειτουργία. Αυτή η μέθοδος γεμίζει κάθε γραμμή που λείπει με την τιμή της πλησιέστερης από πάνω της.
Θα μπορούσατε επίσης να το ονομάσετε συμπλήρωση προς τα εμπρός:
df.fillna (method='ffill', inplace=True)
Συμπληρώστε τις σειρές που λείπουν με τιμές χρησιμοποιώντας το bfill
Εδώ, θα αντικαταστήσετε το γεμίζω μέθοδος που αναφέρεται παραπάνω με γέμισμα. Γεμίζει κάθε γραμμή που λείπει στο DataFrame με την πλησιέστερη τιμή κάτω από αυτήν.
Αυτό ονομάζεται backward-filling:
df.fillna (method='bfill', inplace=True)
2. Η μέθοδος replace().
Μπορείτε να αντικαταστήσετε το Nan τιμές σε μια συγκεκριμένη στήλη με τη μέση, τη διάμεσο, τη λειτουργία ή οποιαδήποτε άλλη τιμή.
Σχετίζεται με:pandas Εντολές για χειρισμό DataFrames
Δείτε πώς λειτουργεί αυτό αντικαθιστώντας τις μηδενικές σειρές σε μια στήλη με όνομα με τη μέση, τη διάμεσο ή τη λειτουργία της:
εισαγωγή παντα
εισαγωγή numpy #αυτό απαιτεί να έχετε εγκαταστήσει προηγουμένως το numpy
#Αντικαταστήστε τις μηδενικές τιμές με τη μέση τιμή:
df['A'].replace([numpy.nan], df[A].mean(), inplace=True)
#Αντικαταστήστε τη στήλη Α με τη διάμεσο:
df['B'].replace([numpy.nan], df[B].median(), inplace=True)
#Χρησιμοποιήστε την τροπική τιμή για τη στήλη C:
df['C'].replace([numpy.nan], df['C'].mode()[0], inplace=True)
εκτύπωση (df)
3. Συμπλήρωση δεδομένων που λείπουν με interpolate()
ο παρεμβάλλω() Η συνάρτηση χρησιμοποιεί υπάρχουσες τιμές στο DataFrame για να εκτιμήσει τις σειρές που λείπουν.
Εκτελέστε τον παρακάτω κώδικα για να δείτε πώς λειτουργεί:
#Interpolate προς τα πίσω κατά μήκος της στήλης:
df.interpolate (μέθοδος ='linear', limit_direction ='backward', inplace=True)
#Interpolate με μπροστινή σειρά κατά μήκος της στήλης:
df.interpolate (μέθοδος ='linear', limit_direction ='forward', inplace=True)
Αντιμετωπίστε προσεκτικά τις σειρές που λείπουν
Ενώ εξετάσαμε μόνο το ενδεχόμενο συμπλήρωσης δεδομένων που λείπουν με προεπιλεγμένες τιμές, όπως μέσους όρους, τρόπο λειτουργίας και άλλες μεθόδους, υπάρχουν άλλες τεχνικές για τη διόρθωση των τιμών που λείπουν. Οι επιστήμονες δεδομένων, για παράδειγμα, μερικές φορές αφαιρούν αυτές τις σειρές που λείπουν, ανάλογα με την περίπτωση.
Επιπλέον, είναι απαραίτητο να σκεφτείτε κριτικά τη στρατηγική σας πριν τη χρησιμοποιήσετε. Διαφορετικά, ενδέχεται να λάβετε ανεπιθύμητα αποτελέσματα ανάλυσης ή πρόβλεψης. Ορισμένες αρχικές στρατηγικές οπτικοποίησης δεδομένων μπορεί να βοηθήσουν.
Εμφανίστε τα δεδομένα σας με γραφήματα Jupyter Notebook.
Διαβάστε Επόμενο
- Προγραμματισμός
- Πύθων
- Προγραμματισμός
- βάση δεδομένων

Ο Idowu είναι παθιασμένος με οτιδήποτε έξυπνη τεχνολογία και παραγωγικότητα. Στον ελεύθερο χρόνο του, παίζει με την κωδικοποίηση και μεταβαίνει στη σκακιέρα όταν βαριέται, αλλά του αρέσει επίσης να ξεφεύγει από τη ρουτίνα που και που. Το πάθος του να δείχνει στους ανθρώπους τον τρόπο γύρω από τη σύγχρονη τεχνολογία τον παρακινεί να γράψει περισσότερα.
Εγγραφείτε στο ενημερωτικό μας δελτίο
Εγγραφείτε στο ενημερωτικό μας δελτίο για συμβουλές τεχνολογίας, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!
Κάντε κλικ εδώ για να εγγραφείτε