You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Data-Science-For-Beginners/translations/el/2-Working-With-Data/08-data-preparation
localizeflow[bot] 594e823aee
chore(i18n): sync translations with latest source changes (chunk 1/1, 10 changes)
4 weeks ago
..
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 10 changes) 4 weeks ago
assignment.ipynb 🌐 Update translations via Co-op Translator 11 months ago
assignment.md chore(i18n): sync translations with latest source changes (chunk 1/1, 213 changes) 6 months ago
notebook.ipynb 🌐 Update translations via Co-op Translator 10 months ago

README.md

Εργασία με Δεδομένα: Προετοιμασία Δεδομένων

 Σημειώσεις από (@sketchthedocs)
Προετοιμασία Δεδομένων - Σημειώσεις από @nitya

Προ-Διαλέξη Κουίζ

Ανάλογα με την πηγή της, η ακατέργαστη πληροφορία μπορεί να περιέχει κάποια ασυνέπειες που θα προκαλέσουν προκλήσεις στην ανάλυση και τη μοντελοποίηση. Με άλλα λόγια, αυτά τα δεδομένα μπορούν να κατηγοριοποιηθούν ως «βρώμικα» και θα πρέπει να καθαριστούν. Το μάθημα αυτό εστιάζει σε τεχνικές καθαρισμού και μετασχηματισμού των δεδομένων για να αντιμετωπιστούν προκλήσεις όπως η έλλειψη, η ανακρίβεια ή η ατελή πληρότητα των δεδομένων. Τα θέματα που καλύπτονται σε αυτό το μάθημα θα αξιοποιήσουν την Python και τη βιβλιοθήκη Pandas και θα παρουσιαστούν στο τετράδιο μέσα σε αυτόν τον φάκελο.

Η σημασία του καθαρισμού δεδομένων

  • Ευκολία χρήσης και επαναχρησιμοποίησης: Όταν τα δεδομένα είναι σωστά οργανωμένα και κανονικοποιημένα, είναι πιο εύκολη η αναζήτηση, η χρήση και η κοινή χρήση τους με άλλους.

  • Συνέπεια: Η επιστήμη των δεδομένων συχνά απαιτεί εργασία με περισσότερα από ένα σύνολα δεδομένων, όπου τα σύνολα από διαφορετικές πηγές πρέπει να συνενωθούν. Η διασφάλιση ότι κάθε ξεχωριστό σύνολο δεδομένων έχει κοινή τυποποίηση εξασφαλίζει ότι τα δεδομένα παραμένουν χρήσιμα όταν συγχωνευθούν όλα σε ένα σύνολο δεδομένων.

  • Ακρίβεια μοντέλου: Τα καθαρισμένα δεδομένα βελτιώνουν την ακρίβεια των μοντέλων που βασίζονται σε αυτά.

Συνήθεις στόχοι και στρατηγικές καθαρισμού

  • Εξερεύνηση ενός συνόλου δεδομένων: Η εξερεύνηση δεδομένων, που καλύπτεται σε μεταγενέστερο μάθημα, μπορεί να σας βοηθήσει να ανακαλύψετε δεδομένα που χρειάζονται καθαρισμό. Η οπτική παρατήρηση των τιμών μέσα σε ένα σύνολο δεδομένων μπορεί να θέσει τις προσδοκίες για το πώς θα μοιάζει το υπόλοιπο, ή να δώσει μια ιδέα για τα προβλήματα που μπορούν να επιλυθούν. Η εξερεύνηση μπορεί να περιλαμβάνει βασικό ερώτημα, οπτικοποιήσεις και δειγματοληψία.

  • Μορφοποίηση: Ανάλογα με την πηγή, τα δεδομένα μπορεί να έχουν ασυνέπειες στον τρόπο που παρουσιάζονται. Αυτό μπορεί να προκαλέσει προβλήματα στην αναζήτηση και την αναπαράσταση της τιμής, όταν η τιμή εμφανίζεται μέσα στο σύνολο δεδομένων αλλά δεν αναπαρίσταται σωστά σε οπτικοποιήσεις ή αποτελέσματα ερωτημάτων. Κοινά προβλήματα μορφοποίησης αφορούν την επίλυση των κενών, των ημερομηνιών και των τύπων δεδομένων. Η επίλυση θεμάτων μορφοποίησης συνήθως ανήκει στα άτομα που χρησιμοποιούν τα δεδομένα. Για παράδειγμα, πρότυπα για το πώς παρουσιάζονται οι ημερομηνίες και οι αριθμοί μπορεί να διαφέρουν ανά χώρα.

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

  • Ελλείποντα δεδομένα: Τα ελλείποντα δεδομένα μπορεί να προκαλέσουν ανακρίβειες καθώς και αδύναμα ή μεροληπτικά αποτελέσματα. Μερικές φορές αυτά μπορούν να επιλυθούν με επαναφόρτωση των δεδομένων, συμπλήρωση των ελλειπόντων τιμών με υπολογισμούς και κώδικα όπως η Python, ή απλά με αφαίρεση της τιμής και των αντίστοιχων δεδομένων. Υπάρχουν πολλοί λόγοι για τους οποίους μπορεί να λείπουν δεδομένα και οι ενέργειες που λαμβάνονται για να επιλυθούν αυτές οι ελλείπουσες τιμές μπορεί να εξαρτώνται από το πώς και γιατί λείπουν αρχικά.

Εξερεύνηση των πληροφοριών DataFrame

Στόχος μάθησης: Στο τέλος αυτής της υποενότητας, θα πρέπει να είστε άνετοι στο να βρίσκετε γενικές πληροφορίες για τα δεδομένα που αποθηκεύονται σε pandas DataFrames.

Μόλις φορτώσετε τα δεδομένα σας στην pandas, θα είναι μάλλον πολύ πιθανό να βρίσκονται μέσα σε ένα DataFrame (ανατρέξτε στο προηγούμενο μάθημα για λεπτομερή επισκόπηση). Παρ' όλα αυτά, αν το σύνολο δεδομένων στο DataFrame σας έχει 60.000 γραμμές και 400 στήλες, πώς μπορείτε να ξεκινήσετε να αντιλαμβάνεστε με τι εργάζεστε; Ευτυχώς, η pandas παρέχει κάποια βολικά εργαλεία για να ρίξετε γρήγορα μια ματιά σε συνολικές πληροφορίες για ένα DataFrame, επιπλέον από τις πρώτες και τις τελευταίες γραμμές.

Για να εξερευνήσουμε αυτή τη λειτουργικότητα, θα εισάγουμε τη βιβλιοθήκη scikit-learn της Python και θα χρησιμοποιήσουμε ένα εμβληματικό σύνολο δεδομένων: το σύνολο δεδομένων Iris.

import pandas as pd
from sklearn.datasets import load_iris

iris = load_iris()
iris_df = pd.DataFrame(data=iris['data'], columns=iris['feature_names'])
μήκος πετάλου (cm) πλάτος πετάλου (cm) μήκος πέταλου (cm) πλάτος πέταλου (cm)
0 5.1 3.5 1.4 0.2
1 4.9 3.0 1.4 0.2
2 4.7 3.2 1.3 0.2
3 4.6 3.1 1.5 0.2
4 5.0 3.6 1.4 0.2
  • DataFrame.info: Για αρχή, η μέθοδος info() χρησιμοποιείται για εκτύπωση μιας περίληψης των δεδομένων που περιέχει ένα DataFrame. Ας ρίξουμε μια ματιά σε αυτό το σύνολο δεδομένων για να δούμε τι έχουμε:
iris_df.info()
RangeIndex: 150 entries, 0 to 149
Data columns (total 4 columns):
 #   Column             Non-Null Count  Dtype  
---  ------             --------------  -----  
 0   sepal length (cm)  150 non-null    float64
 1   sepal width (cm)   150 non-null    float64
 2   petal length (cm)  150 non-null    float64
 3   petal width (cm)   150 non-null    float64
dtypes: float64(4)
memory usage: 4.8 KB

Από αυτό, γνωρίζουμε ότι το σύνολο δεδομένων Iris έχει 150 εγγραφές σε τέσσερις στήλες χωρίς κενές εγγραφές. Όλα τα δεδομένα είναι αποθηκευμένα ως αριθμοί κινητής υποδιαστολής 64 bit.

  • DataFrame.head(): Επόμενο, για να ελέγξουμε το πραγματικό περιεχόμενο του DataFrame, χρησιμοποιούμε τη μέθοδο head(). Ας δούμε πώς μοιάζουν οι πρώτες λίγες γραμμές του iris_df:
iris_df.head()
   sepal length (cm)  sepal width (cm)  petal length (cm)  petal width (cm)
0                5.1               3.5                1.4               0.2
1                4.9               3.0                1.4               0.2
2                4.7               3.2                1.3               0.2
3                4.6               3.1                1.5               0.2
4                5.0               3.6                1.4               0.2
  • DataFrame.tail(): Αντίθετα, για να ελέγξουμε τις τελευταίες λίγες γραμμές του DataFrame, χρησιμοποιούμε τη μέθοδο tail():
iris_df.tail()
     sepal length (cm)  sepal width (cm)  petal length (cm)  petal width (cm)
145                6.7               3.0                5.2               2.3
146                6.3               2.5                5.0               1.9
147                6.5               3.0                5.2               2.0
148                6.2               3.4                5.4               2.3
149                5.9               3.0                5.1               1.8

Συμπέρασμα: Ακόμα και μόνο με μια ματιά στα μεταδεδομένα για τις πληροφορίες σε ένα DataFrame ή στις πρώτες και τελευταίες λίγες τιμές, μπορείτε να πάρετε μια άμεση ιδέα για το μέγεθος, το σχήμα και το περιεχόμενο των δεδομένων με τα οποία εργάζεστε.

Διαχείριση ελλειπόντων δεδομένων

Στόχος μάθησης: Στο τέλος αυτής της υποενότητας, θα πρέπει να ξέρετε πώς να αντικαθιστάτε ή να αφαιρείτε κενές τιμές από DataFrames.

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

Η pandas διαχειρίζεται τις ελλείπουσες τιμές με δύο τρόπους. Ο πρώτος που έχετε δει πριν σε προηγούμενες ενότητες είναι το NaN, ή Not a Number. Αυτή είναι στην πραγματικότητα μια ειδική τιμή που αποτελεί μέρος της προδιαγραφής κινητής υποδιαστολής IEEE και χρησιμοποιείται μόνο για να υποδηλώσει ελλείπουσες τιμές κινητής υποδιαστολής.

Για ελλείπουσες τιμές εκτός κινητής υποδιαστολής, η pandas χρησιμοποιεί το αντικείμενο Python None. Αν και μπορεί να φαίνεται μπερδεμένο ότι θα συναντήσετε δύο διαφορετικούς τύπους τιμών που ουσιαστικά λένε το ίδιο πράγμα, υπάρχουν βάσιμοι προγραμματιστικοί λόγοι για αυτήν την επιλογή σχεδιασμού και, στην πράξη, αυτή η προσέγγιση επιτρέπει στην pandas να παρέχει έναν καλό συμβιβασμό για την πλειονότητα των περιπτώσεων. Παρόλα αυτά, τόσο το None όσο και το NaN έχουν περιορισμούς που πρέπει να λαμβάνετε υπόψη σχετικά με το πώς μπορούν να χρησιμοποιηθούν.

Μάθετε περισσότερα για τα NaN και None από το τετράδιο!

  • Ανίχνευση κενών τιμών: Στην pandas, οι μέθοδοι isnull() και notnull() είναι οι βασικές μέθοδοι για την ανίχνευση κενών τιμών. Και οι δύο επιστρέφουν μάσκες Boolean πάνω στα δεδομένα σας. Θα χρησιμοποιήσουμε το numpy για τις τιμές NaN:
import numpy as np

example1 = pd.Series([0, np.nan, '', None])
example1.isnull()
0    False
1     True
2    False
3     True
dtype: bool

Κοιτάξτε προσεκτικά την έξοδο. Σας εκπλήσσει κάτι; Ενώ το 0 είναι ένα αριθμητικό μηδέν, είναι ωστόσο ένας απολύτως έγκυρος ακέραιος και η pandas τον χειρίζεται ως τέτοιο. Το '' είναι λίγο πιο λεπτό. Παρότι το χρησιμοποιήσαμε στην Ενότητα 1 για να αναπαραστήσουμε μια κενή συμβολοσειρά, παραμένει αντικείμενο συμβολοσειράς και όχι αναπαράσταση μηδενικής τιμής όσο αφορά την pandas.

Τώρα, ας το αντιστρέψουμε και να χρησιμοποιήσουμε αυτές τις μεθόδους με τρόπο πιο οικείο στη χρήση στην πράξη. Μπορείτε να χρησιμοποιήσετε μάσκες Boolean απευθείας ως δείκτες ενός Series ή DataFrame, κάτι που μπορεί να είναι χρήσιμο όταν θέλετε να δουλέψετε με απομονωμένες ελλείπουσες (ή παρούσες) τιμές.

Συμπέρασμα: Και οι μέθοδοι isnull() και notnull() παράγουν παρόμοια αποτελέσματα όταν τις χρησιμοποιείτε σε DataFrame: εμφανίζουν τα αποτελέσματα και τον δείκτη αυτών των αποτελεσμάτων, κάτι που θα σας βοηθήσει σημαντικά καθώς παλεύετε με τα δεδομένα σας.

  • Απόρριψη κενών τιμών: Πέρα από τον εντοπισμό ελλειπόντων τιμών, η pandas παρέχει έναν βολικό τρόπο να αφαιρείτε κενές τιμές από Series και DataFrame. (Ιδιαίτερα σε μεγάλα σύνολα δεδομένων, συνήθως είναι προτιμότερο να αφαιρείτε τις απουσίες [NA] αντί να τις χειρίζεστε με άλλους τρόπους.) Για να το δείτε σε δράση, ας επιστρέψουμε στον example1:
example1 = example1.dropna()
example1
0    0
2     
dtype: object

Σημειώστε ότι αυτό θα πρέπει να μοιάζει με την έξοδό σας από το example3[example3.notnull()]. Η διαφορά εδώ είναι ότι, αντί να κάνουμε απλή δεικτοδότηση στις τιμές μέσω της μάσκας, το dropna έχει αφαιρέσει αυτές τις ελλείπουσες τιμές από το Series example1.

Επειδή τα DataFrame έχουν δύο διαστάσεις, προσφέρουν περισσότερες επιλογές για την αφαίρεση δεδομένων.

example2 = pd.DataFrame([[1,      np.nan, 7], 
                         [2,      5,      8], 
                         [np.nan, 6,      9]])
example2
0 1 2
0 1.0 NaN 7
1 2.0 5.0 8
2 NaN 6.0 9

(Παρατηρήσατε ότι η pandas έχει μετατρέψει δύο από τις στήλες σε floats για να φιλοξενήσουν τα NaN;)

Δεν μπορείτε να αφαιρέσετε μία μόνο τιμή από ένα DataFrame, οπότε πρέπει να αφαιρέσετε ολόκληρες γραμμές ή στήλες. Ανάλογα με το τι κάνετε, μπορεί να θέλετε το ένα ή το άλλο, και έτσι η pandas σας δίνει επιλογές και για τα δύο. Επειδή στην επιστήμη δεδομένων, οι στήλες συνήθως αναπαριστούν μεταβλητές και οι γραμμές αντιπροσωπεύουν παρατηρήσεις, είναι πιο πιθανό να αφαιρείτε γραμμές δεδομένων· η προεπιλεγμένη ρύθμιση για το dropna() είναι να αφαιρεί όλες τις γραμμές που περιέχουν οποιεσδήποτε κενές τιμές:

example2.dropna()
	0	1	2
1	2.0	5.0	8

Αν χρειαστεί, μπορείτε να αφαιρέσετε τιμές NA από στήλες. Χρησιμοποιήστε το axis=1 για να το κάνετε αυτό:

example2.dropna(axis='columns')
	2
0	7
1	8
2	9

Παρατηρήστε ότι αυτό μπορεί να αφαιρέσει πολλά δεδομένα που μπορεί να θέλετε να κρατήσετε, ιδιαίτερα σε μικρότερα σύνολα δεδομένων. Τι γίνεται αν θέλετε να αφαιρέσετε μόνο γραμμές ή στήλες που περιέχουν πολλές ή ακόμα και όλες τις τιμές κενές; Μπορείτε να ορίσετε αυτές τις ρυθμίσεις στο dropna με τις παραμέτρους how και thresh.

Εξ ορισμού, το how='any' (αν θέλετε να ελέγξετε μόνοι σας ή να δείτε ποιες άλλες παραμέτρους έχει η μέθοδος, εκτελέστε example4.dropna? σε ένα κελί κώδικα). Εναλλακτικά, μπορείτε να ορίσετε how='all' ώστε να αφαιρείτε μόνο γραμμές ή στήλες που περιέχουν μόνο κενές τιμές. Ας επεκτείνουμε το παράδειγμα DataFrame μας για να το δούμε αυτό σε δράση.

example2[3] = np.nan
example2
0 1 2 3
0 1.0 NaN 7 NaN
1 2.0 5.0 8 NaN
2 NaN 6.0 9 NaN

Η παράμετρος thresh σας δίνει πιο λεπτομερή έλεγχο: ορίζετε τον αριθμό των μη κενών τιμών που χρειάζεται να έχει μια γραμμή ή μια στήλη για να διατηρηθεί:

example2.dropna(axis='rows', thresh=3)
	0	1	2	3
1	2.0	5.0	8	NaN

Εδώ, η πρώτη και η τελευταία γραμμή έχουν αφαιρεθεί, επειδή περιέχουν μόνο δύο μη κενές τιμές.

  • Συμπλήρωση κενών τιμών: Ανάλογα με το σύνολο δεδομένων σας, μερικές φορές έχει περισσότερο νόημα να συμπληρώσετε τις κενές τιμές με έγκυρες αντί για να τις αφαιρέσετε. Μπορείτε να χρησιμοποιήσετε το isnull για αυτό, αλλά μπορεί να είναι κουραστικό, ιδιαίτερα αν έχετε πολλές τιμές προς συμπλήρωση. Επειδή αυτή είναι μια τόσο συχνή εργασία στην επιστήμη των δεδομένων, η pandas παρέχει το εργαλείο fillna, που επιστρέφει ένα αντίγραφο του Series ή του DataFrame με τις ελλείπουσες τιμές αντικατεστημένες με μια επιλογή σας. Ας δημιουργήσουμε ένα ακόμα παράδειγμα Series για να δούμε πώς λειτουργεί στην πράξη.
example3 = pd.Series([1, np.nan, 2, None, 3], index=list('abcde'))
example3
a    1.0
b    NaN
c    2.0
d    NaN
e    3.0
dtype: float64

Μπορείτε να συμπληρώσετε όλες τις κενές εγγραφές με μία μόνο τιμή, όπως το 0:

example3.fillna(0)
a    1.0
b    0.0
c    2.0
d    0.0
e    3.0
dtype: float64

Μπορείτε να κάνετε προώθηση συμπλήρωσης (forward-fill) των κενών τιμών, που σημαίνει να χρησιμοποιήσετε την τελευταία έγκυρη τιμή για να συμπληρώσετε ένα κενό:

example3.fillna(method='ffill')
a    1.0
b    1.0
c    2.0
d    2.0
e    3.0
dtype: float64

Μπορείτε επίσης να κάνετε οπισθοχώρηση συμπλήρωσης (back-fill), που είναι να διαδοθεί η επόμενη έγκυρη τιμή προς τα πίσω για να καλύψει ένα κενό:

example3.fillna(method='bfill')
a    1.0
b    2.0
c    2.0
d    3.0
e    3.0
dtype: float64

Όπως ίσως υποψιάζεστε, αυτό λειτουργεί το ίδιο και με τα DataFrame, αλλά μπορείτε επίσης να ορίσετε έναν άξονα κατά μήκος του οποίου θα συμπληρώνονται οι κενές τιμές. Λαμβάνοντας ξανά το προηγουμένως χρησιμοποιημένο example2:

example2.fillna(method='ffill', axis=1)
	0	1	2	3
0	1.0	1.0	7.0	7.0
1	2.0	5.0	8.0	8.0
2	NaN	6.0	9.0	9.0

Παρατηρήστε ότι όταν δεν υπάρχει διαθέσιμη προηγούμενη τιμή για την προώθηση συμπλήρωσης, η κενή τιμή παραμένει.

Συμπέρασμα: Υπάρχουν πολλοί τρόποι για να αντιμετωπίσετε τις ελλιπείς τιμές στα σύνολα δεδομένων σας. Η συγκεκριμένη στρατηγική που θα χρησιμοποιήσετε (αφαίρεσή τους, αντικατάστασή τους, ή ακόμα και ο τρόπος με τον οποίο τα αντικαθιστάτε) θα πρέπει να καθορίζεται από τις ιδιαιτερότητες των δεδομένων αυτών. Θα αναπτύξετε μια καλύτερη αντίληψη για το πώς να χειρίζεστε τις ελλιπείς τιμές όσο περισσότερο χειρίζεστε και αλληλοεπιδράτε με τα σύνολα δεδομένων.

Αφαίρεση διπλότυπων δεδομένων

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

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

  • Αναγνώριση διπλοτύπων: duplicated: Μπορείτε εύκολα να εντοπίσετε τις διπλότυπες τιμές χρησιμοποιώντας τη μέθοδο duplicated στο pandas, η οποία επιστρέφει μια boolean μάσκα που υποδεικνύει εάν μια εγγραφή σε ένα DataFrame είναι διπλότυπη μιας προηγούμενης. Ας δημιουργήσουμε ένα ακόμα παράδειγμα DataFrame για να το δούμε αυτό στην πράξη.
example4 = pd.DataFrame({'letters': ['A','B'] * 2 + ['B'],
                         'numbers': [1, 2, 1, 3, 3]})
example4
letters numbers
0 A 1
1 B 2
2 A 1
3 B 3
4 B 3
example4.duplicated()
0    False
1    False
2     True
3    False
4     True
dtype: bool
  • Αφαίρεση διπλοτύπων: drop_duplicates: απλά επιστρέφει ένα αντίγραφο των δεδομένων για τα οποία όλες οι τιμές duplicated είναι False:
example4.drop_duplicates()
	letters	numbers
0	A	1
1	B	2
3	B	3

Τόσο το duplicated όσο και το drop_duplicates από προεπιλογή εξετάζουν όλες τις στήλες, αλλά μπορείτε να ορίσετε να εξετάσουν μόνο ένα υποσύνολο στηλών στο DataFrame σας:

example4.drop_duplicates(['letters'])
letters	numbers
0	A	1
1	B	2

Συμπέρασμα: Η αφαίρεση διπλοτύπων είναι ένα ουσιαστικό μέρος σχεδόν κάθε έργου επιστήμης δεδομένων. Τα διπλότυπα δεδομένα μπορούν να αλλάξουν τα αποτελέσματα των αναλύσεών σας και να σας δώσουν ανακριβή αποτελέσματα!

🚀 Πρόκληση

Όλο το συζητηθέν υλικό παρέχεται ως Jupyter Notebook. Επιπλέον, υπάρχουν ασκήσεις μετά από κάθε ενότητα, δοκιμάστε τις!

Κουίζ μετά τη διάλεξη

Επανεξέταση & Αυτο-μελέτη

Υπάρχουν πολλοί τρόποι για να ανακαλύψετε και να προσεγγίσετε την προετοιμασία των δεδομένων σας για ανάλυση και μοντελοποίηση, και ο καθαρισμός των δεδομένων είναι ένα σημαντικό βήμα που είναι μια «πρακτική» εμπειρία. Δοκιμάστε αυτές τις προκλήσεις από το Kaggle για να εξερευνήσετε τεχνικές που αυτό το μάθημα δεν κάλυψε.

Ανάθεση

Αξιολόγηση Δεδομένων από Φόρμα


Αποποίηση ευθυνών: Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία μετάφρασης με τεχνητή νοημοσύνη Co-op Translator. Ενώ επιδιώκουμε την ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή λανθασμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.