Ταξινομήστε το DataFrame σε R

Taxinomeste To Dataframe Se R



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

Παράδειγμα 1: Ταξινόμηση του DataFrame με χρήση της μεθόδου Order() στο R

Η συνάρτηση order() στο R χρησιμοποιείται για την ταξινόμηση των DataFrames κατά μία ή πολλαπλές στήλες. Η συνάρτηση παραγγελίας λαμβάνει τους δείκτες των ταξινομημένων σειρών για να αναδιατάξει τις σειρές του DataFrame.

εμπ = δεδομένα. πλαίσιο ( ονόματα = ντο ( 'Άντι' , 'Σημάδι' , 'Bonnie' , 'Καρολίνα' , 'Γιάννης' ) ,

ηλικία = ντο ( είκοσι ένα , 23 , 29 , 25 , 32 ) ,

Μισθός = ντο ( 2000 , 1000 , 1500 , 3000 , 2500 ) )

Γάτα ( ' \n \n Πλαίσιο δεδομένων Ταξινόμηση κατά ονόματα σε αύξουσα σειρά \n ' )

sorted_asc = εμπ [ με ( εμπ , Σειρά ( ονόματα ) ) , ]

Τυπώνω ( sorted_asc )

Εδώ, ορίζουμε το 'emp' DataFrame με τρεις στήλες που περιέχουν διαφορετικές τιμές. Η συνάρτηση cat() αναπτύσσεται για να εκτυπώσει τη δήλωση για να υποδείξει ότι το 'emp' DataFrame από τη στήλη 'names' σε αύξουσα σειρά πρόκειται να ταξινομηθεί. Για αυτό, χρησιμοποιούμε τη συνάρτηση order() στο R που επιστρέφει τις θέσεις ευρετηρίου των τιμών σε ένα διάνυσμα που ταξινομείται με αύξουσα σειρά. Σε αυτήν την περίπτωση, η συνάρτηση with() καθορίζει ότι η στήλη 'names' πρέπει να ταξινομηθεί. Το ταξινομημένο DataFrame αποθηκεύεται στη μεταβλητή 'sorted_asc', η οποία μεταβιβάζεται ως όρισμα στη συνάρτηση print() για την εκτύπωση των ταξινομημένων αποτελεσμάτων.







Ως εκ τούτου, τα ταξινομημένα αποτελέσματα της στήλης DataFrame κατά 'ονόματα' σε αύξουσα σειρά εμφανίζονται παρακάτω. Για να λάβουμε τη λειτουργία ταξινόμησης σε φθίνουσα σειρά, μπορούμε απλώς να καθορίσουμε το αρνητικό πρόσημο με το όνομα της στήλης στην προηγούμενη συνάρτηση order():





Παράδειγμα 2: Ταξινόμηση του DataFrame με χρήση των παραμέτρων της μεθόδου Order() στο R

Επιπλέον, η συνάρτηση order() λαμβάνει τα φθίνοντα ορίσματα για να ταξινομήσει το DataFrame. Στο παρακάτω παράδειγμα, καθορίζουμε τη συνάρτηση order() με το όρισμα για ταξινόμηση με αύξουσα ή φθίνουσα σειρά:





df = δεδομένα. πλαίσιο (

ταυτότητα = ντο ( 1 , 3 , 4 , 5 , 2 ) ,

σειρά μαθημάτων = ντο ( 'Πύθων' , 'Ιάβα' , 'C++' , 'MongoDB' , 'R' ) )

Τυπώνω ( 'Ταξινόμηση κατά φθίνουσα σειρά κατά αναγνωριστικό' )

Τυπώνω ( df [ Σειρά ( df$id , μειώνεται = ΑΛΗΘΗΣ ) , ] )

Εδώ, δηλώνουμε πρώτα τη μεταβλητή “df” όπου η συνάρτηση data.frame() ορίζεται με τρεις διαφορετικές στήλες. Στη συνέχεια, χρησιμοποιούμε τη συνάρτηση print() όπου εκτυπώνουμε ένα μήνυμα για να υποδείξουμε ότι το DataFrame πρόκειται να ταξινομηθεί με φθίνουσα σειρά με βάση τη στήλη 'id'. Μετά από αυτό, αναπτύσσουμε ξανά τη συνάρτηση print() για να εκτελέσουμε τη λειτουργία ταξινόμησης και να εκτυπώσουμε αυτά τα αποτελέσματα. Μέσα στη συνάρτηση print(), καλούμε τη συνάρτηση “order” για να ταξινομήσουμε το “df” DataFrame με βάση τη στήλη “course”. Το όρισμα 'φθίνουσα' ορίζεται σε TRUE για ταξινόμηση με φθίνουσα σειρά.

Στην παρακάτω εικόνα, η στήλη 'id' του DataFrame είναι διατεταγμένη με φθίνουσα σειρά:



Ωστόσο, για να έχουμε τα αποτελέσματα της ταξινόμησης σε αύξουσα σειρά, πρέπει να ορίσουμε το φθίνον όρισμα της συνάρτησης order() με FALSE όπως φαίνεται παρακάτω:

Τυπώνω ( 'Ταξινόμηση κατά αύξουσα σειρά κατά αναγνωριστικό' )

Τυπώνω ( df [ Σειρά ( df$id , μειώνεται = ΨΕΥΔΗΣ ) , ] )

Εκεί, παίρνουμε την έξοδο της λειτουργίας ταξινόμησης του DataFrame από τη στήλη 'id' σε αύξουσα σειρά.

Παράδειγμα 3: Ταξινόμηση του DataFrame με χρήση της μεθόδου Arrange() στο R

Επιπλέον, μπορούμε επίσης να χρησιμοποιήσουμε τη μέθοδο arrange() για να ταξινομήσουμε ένα DataFrame κατά στήλες. Μπορούμε επίσης να ταξινομήσουμε σε αύξουσα ή φθίνουσα σειρά. Ο παρακάτω δεδομένος κώδικας R χρησιμοποιεί τη συνάρτηση arrange():

βιβλιοθήκη ( 'dplyr' )

μαθητης σχολειου = δεδομένα. πλαίσιο (

Ταυτότητα = ντο ( 3 , 5 , 2 , 4 , 1 ) ,

σημάδια = ντο ( 70 , 90 , 75 , 88 , 92 ) )

Τυπώνω ( 'Αύξηση ταξινόμησης παραγγελιών κατά αναγνωριστικό' )

Τυπώνω ( κανονίζω ( μαθητης σχολειου , Ταυτότητα ) )

Εδώ, φορτώνουμε το πακέτο 'dplyr' του R για πρόσβαση στη μέθοδο arrange() για ταξινόμηση. Στη συνέχεια, έχουμε τη συνάρτηση data.frame() που περιέχει δύο στήλες και ορίζουμε το DataFrame στη μεταβλητή “student”. Στη συνέχεια, αναπτύσσουμε τη συνάρτηση arrange() από το πακέτο 'dplyr' στη συνάρτηση print() για να ταξινομήσουμε το δεδομένο DataFrame. Η συνάρτηση arrange() λαμβάνει ως πρώτο όρισμα το DataFrame 'student', ακολουθούμενο από το 'Id' των στηλών προς ταξινόμηση. Η συνάρτηση print() στο τέλος εκτυπώνει το ταξινομημένο DataFrame στην κονσόλα.

Μπορούμε να δούμε πού είναι ταξινομημένη η στήλη 'Id' με μια σειρά στην ακόλουθη έξοδο:

Παράδειγμα 4: Ταξινόμηση του DataFrame κατά ημερομηνία στο R

Το DataFrame στο R μπορεί επίσης να ταξινομηθεί με βάση τις τιμές ημερομηνίας. Για αυτό, η ταξινομημένη συνάρτηση πρέπει να καθοριστεί με τη συνάρτηση as.date() για να μορφοποιήσετε τις ημερομηνίες.

ημερομηνία γεγονότος = δεδομένα. πλαίσιο ( Εκδήλωση = ντο ( '3/4/2023' , '2/2/2023' ,

'10/1/2023' , '29/3/2023' ) ,

ταρίφα = ντο ( 3100 , 2200 , 1000 , 2900 ) )

ημερομηνία γεγονότος [ Σειρά ( όπως και . Ημερομηνία ( event_date$event , μορφή = '%d/%m/%Y' ) ) , ]

Εδώ, έχουμε ένα DataFrame 'event_date' που περιέχει τη στήλη 'event' με τις συμβολοσειρές ημερομηνίας σε μορφή 'month/day/year'. Πρέπει να ταξινομήσουμε αυτές τις συμβολοσειρές ημερομηνιών με αύξουσα σειρά. Χρησιμοποιούμε τη συνάρτηση order() που ταξινομεί το DataFrame με βάση τη στήλη «γεγονός» σε αύξουσα σειρά. Αυτό το επιτυγχάνουμε μετατρέποντας τις συμβολοσειρές ημερομηνίας στη στήλη 'γεγονός' στις πραγματικές ημερομηνίες χρησιμοποιώντας τη συνάρτηση 'as.Date' και καθορίζοντας τη μορφή των συμβολοσειρών ημερομηνίας χρησιμοποιώντας την παράμετρο 'format'.

Έτσι, αντιπροσωπεύουμε τα δεδομένα που ταξινομούνται με αύξουσα σειρά με βάση τη στήλη ημερομηνίας 'συμβάν'.

Παράδειγμα 5: Ταξινόμηση του DataFrame με χρήση της μεθόδου Setorder() στο R

Ομοίως, η setorder() είναι επίσης μια άλλη μέθοδος ταξινόμησης του DataFrame. Ταξινομεί το DataFrame λαμβάνοντας το όρισμα ακριβώς όπως η μέθοδος arrange(). Ο κώδικας R για τη μέθοδο setorder() δίνεται ως εξής:

βιβλιοθήκη ( 'πίνακας δεδομένων' )

δ1 = δεδομένα. πλαίσιο ( Αριθμός Παραγγελίας = ντο ( 1 , 4 , 2 , 5 , 3 ) ,

παραγγελίαΣτοιχείο = ντο ( 'μήλο' , 'πορτοκάλι' , 'ακτινίδια' , 'μάνγκο' , 'μπανάνα' ) )

Τυπώνω ( ορίστε τη σειρά ( δ1 , παραγγελίαΣτοιχείο ) )

Εδώ, ορίζουμε πρώτα τη βιβλιοθήκη data.table αφού η setorder() είναι η συνάρτηση αυτού του πακέτου. Στη συνέχεια, χρησιμοποιούμε τη συνάρτηση data.frame() για να δημιουργήσουμε το DataFrame. Το DataFrame καθορίζεται με μόνο δύο στήλες που χρησιμοποιούμε για την ταξινόμηση. Μετά από αυτό, ορίζουμε τη συνάρτηση setorder() μέσα στη συνάρτηση print(). Η συνάρτηση setorder() παίρνει το DataFrame “d1” ως πρώτη παράμετρο και τη στήλη “orderId” ως δεύτερη παράμετρο με την οποία ταξινομείται το DataFrame. Η συνάρτηση 'setorder' αναδιατάσσει τις σειρές του πίνακα δεδομένων σε αύξουσα σειρά με βάση τις τιμές στη στήλη 'orderId'.

Το ταξινομημένο DataFrame είναι η έξοδος στην ακόλουθη κονσόλα του R:

Παράδειγμα 6: Ταξινόμηση του DataFrame με χρήση της μεθόδου Row.Names() στο R

Η μέθοδος row.names() είναι επίσης ένας τρόπος ταξινόμησης του DataFrame στο R. Το row.names() ταξινομεί τα DataFrames κατά την καθορισμένη σειρά.

df < - δεδομένα. πλαίσιο ( ομάδα = ντο ( 'Χ' , 'Χ' , 'ΚΑΙ' , 'ΚΑΙ' , 'ΜΕ' ) ,

σκορ = ντο ( 91 , 80 , 86 , 83 , 95 ) )

σειρά. ονόματα ( df ) < - γ ( 'ΕΝΑ' , 'ΡΕ' , 'ΝΤΟ' , 'ΚΑΙ' , 'ΣΙ' )

df [ Σειρά ( σειρά. ονόματα ( df ) ) , ]

Εδώ, η συνάρτηση data.frame() εγκαθίσταται στη μεταβλητή 'df', όπου οι στήλες καθορίζονται με τις τιμές. Στη συνέχεια, τα ονόματα σειρών του DataFrame καθορίζονται χρησιμοποιώντας τη συνάρτηση row.names(). Μετά από αυτό, καλούμε τη συνάρτηση order() για να ταξινομήσουμε το DataFrame κατά ονόματα σειρών. Η συνάρτηση order() επιστρέφει τους δείκτες των ταξινομημένων σειρών που χρησιμοποιούνται για την αναδιοργάνωση των σειρών του DataFrame.

Η έξοδος δείχνει το ταξινομημένο DataFrame ανά γραμμές αλφαβητικά:

συμπέρασμα

Έχουμε δει τις διαφορετικές συναρτήσεις για την ταξινόμηση των DataFrames στο R. Κάθε μία από τις μεθόδους έχει ένα πλεονέκτημα και χρειάζεται τη λειτουργία ταξινόμησης. Μπορεί να υπάρχουν περισσότερες μέθοδοι ή τρόποι ταξινόμησης του DataFrame στη γλώσσα R, αλλά οι μέθοδοι order(), arrange() και setorder() είναι οι πιο σημαντικές και εύχρηστες για ταξινόμηση.