Πώς να αναλύσετε δεδομένα κειμένου στο R: Βασικά στοιχεία χειρισμού συμβολοσειρών

Pos Na Analysete Dedomena Keimenou Sto R Basika Stoicheia Cheirismou Symboloseiron



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

Παράδειγμα 1: Λάβετε τη θέση του μοτίβου από τη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση Grep() στο R

Για να εξαγάγετε τη θέση του καθορισμένου μοτίβου από τη συμβολοσειρά, χρησιμοποιείται η συνάρτηση grep() του R.

grep('i+', c('fix', 'split', 'corn n', 'paint'), perl=TRUE, value=FALSE)

Εδώ, χρησιμοποιούμε τη συνάρτηση grep() όπου το μοτίβο '+i' καθορίζεται ως όρισμα που πρέπει να αντιστοιχιστεί στο διάνυσμα των συμβολοσειρών. Ορίζουμε τα διανύσματα χαρακτήρων που περιέχουν τέσσερις συμβολοσειρές. Μετά από αυτό, ορίσαμε το όρισμα 'perl' με την τιμή TRUE που δείχνει ότι το R χρησιμοποιεί μια συμβατή βιβλιοθήκη κανονικών εκφράσεων με perl και η παράμετρος 'value' καθορίζεται με την τιμή 'FALSE' που χρησιμοποιείται για την ανάκτηση των δεικτών των στοιχείων στο διάνυσμα που ταιριάζουν με το μοτίβο.







Η θέση του μοτίβου «+i» από κάθε συμβολοσειρά διανυσματικών χαρακτήρων εμφανίζεται στην ακόλουθη έξοδο:





Παράδειγμα 2: Αντιστοιχίστε το μοτίβο χρησιμοποιώντας τη συνάρτηση Gregexpr() στο R

Στη συνέχεια, ανακτούμε τη θέση του δείκτη μαζί με το μήκος της συγκεκριμένης συμβολοσειράς στο R χρησιμοποιώντας τη συνάρτηση gregexpr().





char_vec <- c('PROGRAMMINGLANGUAGE','RSCRIPT')
gregexpr('GRAMM', char_vec, useBytes = TRUE)

Εδώ, ορίζουμε τη μεταβλητή 'char_vect' όπου οι συμβολοσειρές παρέχονται με διαφορετικούς χαρακτήρες. Μετά από αυτό, ορίζουμε τη συνάρτηση gregexpr() που παίρνει το μοτίβο συμβολοσειράς 'GRAMM' για να ταιριάζει με τις συμβολοσειρές που είναι αποθηκευμένες στο 'char_vec'. Στη συνέχεια, ορίζουμε την παράμετρο useBytes με την τιμή 'TRUE'. Αυτή η παράμετρος υποδεικνύει ότι η αντιστοίχιση πρέπει να επιτυγχάνεται byte-by-byte και όχι χαρακτήρας-χαρακτήρα.

Η ακόλουθη έξοδος που ανακτάται από τη συνάρτηση gregexpr() αντιπροσωπεύει τους δείκτες και το μήκος και των δύο διανυσματικών συμβολοσειρών:



Παράδειγμα 3: Μετρήστε τους συνολικούς χαρακτήρες στη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση Nchar() στο R

Η μέθοδος nchar() που εφαρμόζουμε παρακάτω μας επιτρέπει επίσης να προσδιορίσουμε πόσοι χαρακτήρες υπάρχουν στη συμβολοσειρά:

Res <- nchar ('Μετρήστε κάθε χαρακτήρα')
εκτύπωση (Απ.)

Εδώ, καλούμε τη μέθοδο nchar() που έχει οριστεί στη μεταβλητή 'Res'. Η μέθοδος nchar() παρέχεται με τη μεγάλη συμβολοσειρά χαρακτήρων που μετράται με τη μέθοδο nchar() και παρέχει τον αριθμό των χαρακτήρων μετρητή στην καθορισμένη συμβολοσειρά. Στη συνέχεια, περνάμε τη μεταβλητή “Res” στη μέθοδο print() για να δούμε τα αποτελέσματα της μεθόδου nchar().

Το αποτέλεσμα λαμβάνεται στην ακόλουθη έξοδο που δείχνει ότι η καθορισμένη συμβολοσειρά περιέχει 20 χαρακτήρες:

Παράδειγμα 4: Εξαγωγή της υποσυμβολοσειράς από τη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση Substring() στο R

Χρησιμοποιούμε τη μέθοδο substring() με τα ορίσματα 'start' και 'stop' για να εξαγάγουμε τη συγκεκριμένη υποσυμβολοσειρά από τη συμβολοσειρά.

str <- substring('MORNING', 2, 4)
print(str)

Εδώ, έχουμε μια μεταβλητή “str” όπου καλείται η μέθοδος substring(). Η μέθοδος substring() παίρνει τη συμβολοσειρά 'MORNING' ως πρώτο όρισμα και την τιμή '2' ως δεύτερο όρισμα που υποδεικνύει ότι ο δεύτερος χαρακτήρας από τη συμβολοσειρά πρόκειται να εξαχθεί και η τιμή του ορίσματος '4' υποδεικνύει ότι ο τέταρτος χαρακτήρας πρέπει να εξαχθεί. Η μέθοδος substring() εξάγει τους χαρακτήρες από τη συμβολοσειρά μεταξύ της καθορισμένης θέσης.

Η ακόλουθη έξοδος εμφανίζει την εξαγόμενη υποσυμβολοσειρά που βρίσκεται μεταξύ της δεύτερης και της τέταρτης θέσης στη συμβολοσειρά:

Παράδειγμα 5: Συνδέστε τη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση Paste() στο R

Η συνάρτηση paste() στο R χρησιμοποιείται επίσης για χειρισμό συμβολοσειρών που συνενώνει τις καθορισμένες συμβολοσειρές διαχωρίζοντας τους οριοθέτες.

msg1 <- 'Περιεχόμενο'
msg2 <- 'Γράψιμο'

επικόλληση (msg1, msg2)

Εδώ, καθορίζουμε τις συμβολοσειρές στις μεταβλητές 'msg1' και 'msg2', αντίστοιχα. Στη συνέχεια, χρησιμοποιούμε τη μέθοδο paste() του R για να συνδέσουμε την παρεχόμενη συμβολοσειρά σε μία μόνο συμβολοσειρά. Η μέθοδος paste() παίρνει τη μεταβλητή strings ως όρισμα και επιστρέφει τη μοναδική συμβολοσειρά με το προεπιλεγμένο διάστημα μεταξύ των συμβολοσειρών.

Κατά την εκτέλεση της μεθόδου paste(), η έξοδος αντιπροσωπεύει τη μοναδική συμβολοσειρά με το κενό σε αυτήν.

Παράδειγμα 6: Τροποποίηση της συμβολοσειράς χρησιμοποιώντας τη συνάρτηση Substring() στο R

Επιπλέον, μπορούμε επίσης να ενημερώσουμε τη συμβολοσειρά προσθέτοντας τη δευτερεύουσα συμβολοσειρά ή οποιονδήποτε χαρακτήρα στη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση substring() χρησιμοποιώντας το ακόλουθο σενάριο:

str1 <- 'Heroes'
substring(str1, 5, 6) <- 'ic'

cat ('    Τροποποιημένη συμβολοσειρά:', str1)

Ορίζουμε τη συμβολοσειρά «Heroes» μέσα στη μεταβλητή «str1». Στη συνέχεια, αναπτύσσουμε τη μέθοδο substring() όπου καθορίζεται το 'str1' μαζί με τις τιμές του δείκτη 'start' και 'stop' της υποσυμβολοσειράς. Η μέθοδος substring() εκχωρείται με την υποσυμβολοσειρά 'iz' η οποία τοποθετείται στη θέση που καθορίζεται στη συνάρτηση για τη δεδομένη συμβολοσειρά. Μετά από αυτό, χρησιμοποιούμε τη συνάρτηση cat() του R που αντιπροσωπεύει την ενημερωμένη τιμή συμβολοσειράς.

Η έξοδος που εμφανίζει τη συμβολοσειρά ενημερώνεται με τη νέα χρησιμοποιώντας τη μέθοδο substring ():

Παράδειγμα 7: Μορφοποιήστε τη συμβολοσειρά χρησιμοποιώντας τη συνάρτηση Format() στο R

Ωστόσο, η λειτουργία χειρισμού συμβολοσειράς στο R περιλαμβάνει επίσης τη μορφοποίηση της συμβολοσειράς ανάλογα. Για αυτό, χρησιμοποιούμε τη συνάρτηση format() όπου μπορεί να ευθυγραμμιστεί η συμβολοσειρά και να ορίσουμε το πλάτος της συγκεκριμένης συμβολοσειράς.

placement1 <- format('Προγράμματα', πλάτος = 10, justify = 'l')
placement2 <- format('Προγράμματα', πλάτος = 10, justify = 'r')
placement3 <- format('Προγράμματα', πλάτος = 10, justify = 'c')

εκτύπωση (τοποθέτηση 1)
εκτύπωση (τοποθέτηση 2)
εκτύπωση (τοποθέτηση 3)

Εδώ, ορίζουμε τη μεταβλητή “placement1” που παρέχεται με τη μέθοδο format(). Περνάμε τη συμβολοσειρά “programs” που πρόκειται να μορφοποιηθεί στη μέθοδο format(). Το πλάτος ορίζεται και η στοίχιση της συμβολοσειράς τίθεται προς τα αριστερά χρησιμοποιώντας το όρισμα 'justify'. Ομοίως, δημιουργούμε δύο ακόμη μεταβλητές, τις “placement2” και “placement2” και εφαρμόζουμε τη μέθοδο format() για να μορφοποιήσουμε ανάλογα την παρεχόμενη συμβολοσειρά.

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

Παράδειγμα 8: Μετατρέψτε τη συμβολοσειρά σε πεζά και κεφαλαία στο R

Επιπλέον, μπορούμε επίσης να μετατρέψουμε τη συμβολοσειρά σε πεζά και κεφαλαία χρησιμοποιώντας τις συναρτήσεις tolower() και toupper() ως εξής:

s1 <- 'GoOd FooD GOoD life'
αποτέλεσμα1 <- tolower(s1)

εκτύπωση (αποτέλεσμα 1)

s2 <- 'Η γλώσσα προγραμματισμού r στο '
αποτέλεσμα2 <- toupper(s2)

εκτύπωση (αποτέλεσμα 2)

Εδώ, παρέχουμε τη συμβολοσειρά που περιέχει τους κεφαλαίους και πεζούς χαρακτήρες. Μετά από αυτό, η συμβολοσειρά διατηρείται στη μεταβλητή 's1'. Στη συνέχεια, καλούμε τη μέθοδο tolower() και περνάμε τη συμβολοσειρά “s1” μέσα σε αυτήν για να μετατρέψουμε όλους τους χαρακτήρες μέσα στη συμβολοσειρά με πεζά. Στη συνέχεια, εκτυπώνουμε τα αποτελέσματα της μεθόδου tolower() που αποθηκεύεται στη μεταβλητή 'result1'. Στη συνέχεια, ορίζουμε μια άλλη συμβολοσειρά στη μεταβλητή “s2” που περιέχει όλους τους χαρακτήρες με πεζούς χαρακτήρες. Εφαρμόζουμε τη μέθοδο toupper() σε αυτή τη συμβολοσειρά 's2' για να μετατρέψουμε την υπάρχουσα συμβολοσειρά σε κεφαλαία.

Η έξοδος εμφανίζει και τις δύο συμβολοσειρές στην καθορισμένη περίπτωση στην παρακάτω εικόνα:

συμπέρασμα

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