Kako analizirati tekstualne podatke u R-u: Osnove manipulacije nizovima

Kako Analizirati Tekstualne Podatke U R U Osnove Manipulacije Nizovima



Nizovi su druga najpopularnija vrsta podataka u R programiranju, a manipulacija nizovima ključni je zadatak u R. Operacija manipulacije nizovima u R sastoji se od više funkcija za korištenje i promjenu tekstualnih podataka, uključujući mijenjanje i raščlanjivanje nizova. U ovom ćemo članku zaroniti u nekoliko funkcija koje nam pomažu u manipulaciji nizovima. Ove su funkcije ugrađene u R i koriste se u razne svrhe za izvršavanje zadataka niza.

Primjer 1: dohvaćanje položaja uzorka iz niza pomoću funkcije Grep() u R

Za izdvajanje položaja navedenog uzorka iz niza koristi se funkcija grep() od R.

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

Ovdje koristimo funkciju grep() gdje je uzorak '+i' naveden kao argument koji treba uskladiti unutar vektora nizova. Postavili smo vektore znakova koji sadrže četiri niza. Nakon toga smo postavili argument 'perl' s vrijednošću TRUE koja označava da R koristi biblioteku regularnih izraza kompatibilnu s perlom, a parametar 'value' je naveden s vrijednošću 'FALSE' koja se koristi za dohvaćanje indeksa elemenata u vektoru koji odgovara uzorku.







Položaj uzorka '+i' iz svakog niza vektorskih znakova prikazan je u sljedećem izlazu:





Primjer 2: Spajanje uzorka pomoću funkcije Gregexpr() u R-u

Zatim dohvaćamo poziciju indeksa zajedno s duljinom određenog niza u R pomoću funkcije gregexpr().





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

Ovdje smo postavili varijablu “char_vect” gdje nizovi imaju različite znakove. Nakon toga definiramo funkciju gregexpr() koja uzima 'GRAMM' uzorak niza za podudaranje s nizovima koji su pohranjeni u 'char_vec'. Zatim postavljamo parametar useBytes s vrijednošću 'TRUE'. Ovaj parametar označava da se podudaranje treba postići bajt po bajt, a ne znak po znak.

Sljedeći izlaz koji se dohvaća iz funkcije gregexpr() predstavlja indekse i duljinu oba vektorska niza:



Primjer 3: Izbrojite ukupan broj znakova u nizu pomoću funkcije Nchar() u R-u

Metoda nchar() koju implementiramo u nastavku također nam omogućuje da odredimo koliko znakova ima niz:

Res <- nchar('Broji svaki znak')
ispis (rez)

Ovdje pozivamo metodu nchar() koja je postavljena unutar varijable 'Res'. Metoda nchar() ima dugačak niz znakova koji se broji metodom nchar() i daje broj znakova brojača u navedenom nizu. Zatim prosljeđujemo varijablu “Res” metodi print() da bismo vidjeli rezultate metode nchar().

Rezultat se prima u sljedećem izlazu koji pokazuje da navedeni niz sadrži 20 znakova:

Primjer 4: Izdvojite podniz iz niza pomoću funkcije Substring() u R

Koristimo metodu substring() s argumentima 'start' i 'stop' za izdvajanje određenog podstringa iz niza.

str <- podniz('JUTRO', 2, 4)
ispis(str)

Ovdje imamo varijablu “str” gdje se poziva metoda substring(). Metoda substring() uzima niz “JUTRO” kao prvi argument i vrijednost “2” kao drugi argument koji označava da se drugi znak iz niza treba izdvojiti, a vrijednost argumenta “4” označava da četvrti znak treba izdvojiti. Metoda substring() izvlači znakove iz niza između navedenog položaja.

Sljedeći izlaz prikazuje ekstrahirani podniz koji se nalazi između druge i četvrte pozicije u nizu:

Primjer 5: Spajanje niza pomoću funkcije Paste() u R

Funkcija paste() u R-u također se koristi za manipulaciju nizovima koja ulančava navedene nizove odvajanjem graničnika.

msg1 <- 'Sadržaj'
msg2 <- 'Pisanje'

zalijepi (msg1, msg2)

Ovdje specificiramo nizove za varijable 'msg1' i 'msg2'. Zatim koristimo metodu paste() R-a za spajanje navedenog niza u jedan niz. Metoda paste() uzima varijablu nizova kao argument i vraća jedan niz sa zadanim razmakom između nizova.

Nakon izvršenja metode paste(), izlaz predstavlja jedan niz s razmakom u njemu.

Primjer 6: Izmijenite niz pomoću funkcije Substring() u R

Nadalje, također možemo ažurirati niz dodavanjem podniza ili bilo kojeg znaka u niz pomoću funkcije substring() pomoću sljedeće skripte:

str1 <- 'Heroji'
podniz(str1, 5, 6) <- 'ic'

cat('    Modificirani niz:', str1)

String “Heroes” postavljamo unutar varijable “str1”. Zatim implementiramo metodu substring() gdje je 'str1' navedeno zajedno s vrijednostima indeksa 'start' i 'stop' podniza. Metodi substring() dodjeljuje se podniz “iz” koji se postavlja na poziciju koja je navedena unutar funkcije za dati niz. Nakon toga koristimo funkciju cat() od R koja predstavlja ažuriranu vrijednost niza.

Izlaz koji prikazuje niz ažurira se novim korištenjem metode substring ():

Primjer 7: Formatirajte niz pomoću funkcije Format() u R-u

Međutim, operacija manipulacije nizom u R također uključuje odgovarajuće formatiranje niza. Za to koristimo funkciju format() gdje se niz može poravnati i postaviti širina određenog niza.

placement1 <- format('Programi', width = 10, justify = 'l')
placement2 <- format('Programi', width = 10, justify = 'r')
placement3 <- format('Programi', width = 10, justify = 'c')

ispis(položaj1)
ispis(položaj2)
ispis(položaj3)

Ovdje smo postavili varijablu 'placement1' koja je osigurana metodom format(). Prosljeđujemo niz “programa” koji treba formatirati metodi format(). Širina je postavljena, a poravnanje niza postavljeno je ulijevo pomoću argumenta 'justify'. Slično, stvaramo još dvije varijable, 'placement2' i 'placement2', i primjenjujemo metodu format() za formatiranje danog niza u skladu s tim.

Izlaz prikazuje tri stila oblikovanja za isti niz na sljedećoj slici, uključujući lijevo, desno i središnje poravnanje:

Primjer 8: Pretvorite niz u mala i velika slova u R

Dodatno, također možemo pretvoriti niz u mala i velika slova pomoću funkcija tolower() i toupper() na sljedeći način:

s1 <- 'Dobra hrana DOBAR ŽIVOT'
rezultat1 <- niži(s1)

ispis (rezultat1)

s2 <- 'Programski jezik r u '
rezultat2 <- gornji(s2)

ispis(rezultat2)

Ovdje pružamo niz koji sadrži velika i mala slova. Nakon toga, string se čuva u varijabli “s1”. Zatim pozivamo metodu tolower() i prosljeđujemo niz 's1' unutar nje da transformiramo sve znakove unutar niza u mala slova. Zatim ispisujemo rezultate metode tolower() koja je pohranjena u varijabli “result1”. Zatim smo postavili još jedan niz u varijabli “s2” koji sadrži sve znakove u malim slovima. Primjenjujemo metodu toupper() na ovaj 's2' niz kako bismo transformirali postojeći niz u velika slova.

Izlaz prikazuje oba niza u navedenom slučaju na sljedećoj slici:

Zaključak

Naučili smo različite načine upravljanja i analize nizova što se naziva manipulacija nizovima. Izvukli smo položaj znaka iz niza, spojili različite nizove i transformirali niz u navedena velika i mala slova. Također, formatirali smo niz, modificirali niz i ovdje se izvode razne druge operacije za manipuliranje nizom.