Tekstitietojen analysointi R:ssä: Merkkijonojen manipuloinnin perusteet

Tekstitietojen Analysointi R Ssa Merkkijonojen Manipuloinnin Perusteet



Merkkijonot ovat R-ohjelmoinnin toiseksi suosituin tietotyyppi, ja merkkijonojen käsittely on tärkeä tehtävä R:ssä. R:n merkkijonojen käsittely koostuu useista funktioista, joilla käytetään ja muutetaan tekstidataa, mukaan lukien merkkijonojen muuttaminen ja jäsentäminen. Tässä artikkelissa sukeltaamme joihinkin toimintoihin, jotka auttavat meitä merkkijonojen käsittelyssä. Nämä toiminnot ovat sisäänrakennettuja R:ssä ja niitä käytetään eri tarkoituksiin merkkijonotehtävien suorittamiseen.

Esimerkki 1: Hae kuvion sijainti merkkijonosta käyttämällä R:n Grep()-funktiota

Määritellyn kuvion sijainnin erottamiseksi merkkijonosta käytetään R:n grep()-funktiota.

grep('i+', c('korjaa', 'jakaa', 'maissi n', 'maali'), perl=TOSI, arvo=EPÄTOSI)

Tässä käytämme grep()-funktiota, jossa '+i'-kuvio on määritetty argumentiksi, joka sovitetaan merkkijonovektoriin. Asetamme merkkivektorit, jotka sisältävät neljä merkkijonoa. Tämän jälkeen asetamme 'perl'-argumentin arvolla TRUE, joka osoittaa, että R käyttää perl-yhteensopivaa säännöllisten lausekkeiden kirjastoa, ja parametri 'value' määritetään arvolla 'FALSE', jota käytetään elementtien indeksien hakemiseen. kuviota vastaavassa vektorissa.







'+i' kuvion sijainti kustakin vektorimerkkijonosta näkyy seuraavassa tulosteessa:





Esimerkki 2: Yhdistä kuvio käyttämällä R:n Gregexpr()-funktiota

Seuraavaksi haemme indeksin sijainnin ja tietyn merkkijonon pituuden R:stä käyttämällä gregexpr()-funktiota.





char_vec <- c('OHJELMOINTIKIELI','RSCRIPT')
gregexpr('GRAMM', char_vec, useBytes = TOSI)

Tässä asetetaan 'char_vect'-muuttuja, jossa merkkijonot on varustettu eri merkeillä. Tämän jälkeen määritämme gregexpr()-funktion, joka ottaa 'GRAMM'-merkkijonokuvion sovitettavaksi 'char_vec'-tiedostoon tallennettujen merkkijonojen kanssa. Sitten asetamme useBytes-parametrin arvoksi 'TRUE'. Tämä parametri osoittaa, että sovitus tulisi saavuttaa tavulta tavulta eikä merkki kerrallaan.

Seuraava gregexpr()-funktiosta haettu tulos edustaa molempien vektorimerkkijonojen indeksejä ja pituutta:



Esimerkki 3: Laske merkkijonon kokonaismerkit käyttämällä R:n Nchar()-funktiota

Seuraavassa toteuttamamme nchar()-metodi antaa meille myös mahdollisuuden määrittää, kuinka monta merkkiä merkkijonossa on:

Res <- nchar('Laske jokainen merkki')
tulosta (Res)

Tässä kutsumme nchar()-menetelmää, joka on asetettu 'Res'-muuttujaan. Metodi nchar() sisältää pitkän merkkijonon, joka lasketaan nchar()-metodilla ja joka tarjoaa laskurimerkkien määrän määritetyssä merkkijonossa. Sitten välitämme 'Res'-muuttujan print()-menetelmälle nähdäksemme nchar()-menetelmän tulokset.

Tulos vastaanotetaan seuraavassa tulosteessa, joka osoittaa, että määritetty merkkijono sisältää 20 merkkiä:

Esimerkki 4: Pura alimerkkijono merkkijonosta käyttämällä R:n Substring()-funktiota

Käytämme substring()-menetelmää 'start'- ja 'stop'-argumenttien kanssa poimimaan tietyn alimerkkijonon merkkijonosta.

str <- alimerkkijono('AAMU', 2, 4)
tulosta (str)

Täällä meillä on 'str' ​​-muuttuja, jossa alimerkkijono () -menetelmä kutsutaan ulos. Substring()-metodi ottaa 'MORING'-merkkijonon ensimmäiseksi argumentiksi ja arvon '2' toiseksi argumentiksi, mikä osoittaa, että merkkijonon toinen merkki on poimittava, ja argumentin '4' arvo osoittaa, että neljäs merkki on purettava. Substring()-menetelmä poimii merkit merkkijonosta määritetyn sijainnin välissä.

Seuraava tulos näyttää puretun alimerkkijonon, joka on merkkijonon toisen ja neljännen sijainnin välissä:

Esimerkki 5: Liitä merkkijono käyttämällä Paste()-funktiota R:ssä

Paste()-funktiota R:ssä käytetään myös merkkijonojen käsittelyyn, joka yhdistää määritetyt merkkijonot erottamalla erottimet.

msg1 <- 'Sisältö'
msg2 <- 'Kirjoitetaan'

liitä (msg1, msg2)

Tässä määritämme merkkijonot 'msg1'- ja 'msg2'-muuttujille, vastaavasti. Sitten käytämme R:n paste()-menetelmää ketjuttaaksemme tarjotun merkkijonon yhdeksi merkkijonoksi. Paste()-menetelmä ottaa merkkijonomuuttujan argumenttina ja palauttaa yksittäisen merkkijonon, jossa merkkijonojen välissä on oletusväli.

Paste()-menetelmää suoritettaessa tulos edustaa yhtä merkkijonoa, jossa on välilyönti.

Esimerkki 6: Muokkaa merkkijonoa käyttämällä R:n Substring()-funktiota

Lisäksi voimme myös päivittää merkkijonon lisäämällä alimerkkijonon tai minkä tahansa merkin merkkijonoon käyttämällä substring()-funktiota käyttämällä seuraavaa komentosarjaa:

str1 <- 'Sankarit'
osamerkkijono(str1, 5, 6) <- 'ic'

cat('    Muokattu merkkijono:', str1)

Asetamme 'Heroes'-merkkijonon 'str1'-muuttujaan. Sitten otamme käyttöön substring()-menetelmän, jossa 'str1' on määritetty yhdessä alimerkkijonon 'start' ja 'stop' indeksiarvojen kanssa. Substring()-menetelmälle on määritetty 'iz'-alimerkkijono, joka sijoitetaan kohtaan, joka on määritetty funktiossa annetulle merkkijonolle. Sen jälkeen käytämme R:n cat()-funktiota, joka edustaa päivitettyä merkkijonoarvoa.

Merkkijonon näyttävä tulos päivitetään uudella käyttämällä alimerkkijono () -menetelmää:

Esimerkki 7: Muotoile merkkijono Format()-funktiolla R:ssä

Kuitenkin merkkijonojen käsittely R:ssä sisältää myös merkkijonon muotoilun vastaavasti. Tätä varten käytämme format()-funktiota, jossa merkkijono voidaan tasata ja määrittää tietyn merkkijonon leveys.

sijoittelu1 <- muoto('Ohjelmat', leveys = 10, tasaus = 'l')
sijoittelu2 <- muoto('Ohjelmat', leveys = 10, tasaus = 'r')
sijoittelu3 <- muoto('Ohjelmat', leveys = 10, tasaus = 'c')

tulosta (sijoittelu1)
tulosta (sijoittelu2)
tulosta (sijoittelu3)

Tässä asetetaan 'placement1'-muuttuja, joka toimitetaan format()-menetelmällä. Välitämme muotoiltavan 'ohjelmat'-merkkijonon format()-metodille. Leveys asetetaan ja merkkijonon tasaus asetetaan vasemmalle 'justify'-argumentilla. Samalla tavalla luomme kaksi muuta muuttujaa, 'placement2' ja 'placement2', ja käytämme format()-metodia muotoillaksemme tarjotun merkkijonon vastaavasti.

Tulos näyttää kolme muotoilutyyliä samalle merkkijonolle seuraavassa kuvassa, mukaan lukien tasaukset vasemmalle, oikealle ja keskelle:

Esimerkki 8: Muunna merkkijono pieniksi ja isoiksi kirjaimille R:ssä

Lisäksi voimme myös muuttaa merkkijonon pienillä ja isoilla kirjaimilla käyttämällä tolower()- ja toupper()-funktioita seuraavasti:

s1 <- 'HYVÄ RUOKA HYVÄ ELÄMÄ'
tulos1 <- pienempi(s1)

tulosta (tulos1)

s2 <- 'R-ohjelmointikieli'
tulos2 <- toupper(s2)

tulosta (tulos2)

Tässä on merkkijono, joka sisältää isot ja pienet kirjaimet. Tämän jälkeen merkkijono säilyy muuttujassa 's1'. Sitten kutsumme tolower()-metodia ja välitämme sen sisällä 's1'-merkkijonon muuttaaksesi kaikki merkkijonon sisällä olevat merkit pienillä kirjaimilla. Sitten tulostamme 'result1'-muuttujaan tallennetun tolower()-menetelmän tulokset. Seuraavaksi asetamme 's2'-muuttujaan toisen merkkijonon, joka sisältää kaikki merkit pienillä kirjaimilla. Käytämme toupper()-menetelmää tähän 's2'-merkkijonoon muuntaaksemme olemassa olevan merkkijonon isoksi.

Tulos näyttää molemmat merkkijonot määritetyssä tapauksessa seuraavassa kuvassa:

Johtopäätös

Opimme erilaisia ​​tapoja hallita ja analysoida merkkijonoja, joita kutsutaan merkkijonojen manipuloinniksi. Poimimme merkin sijainnin merkkijonosta, ketjutimme eri merkkijonot ja muutimme merkkijonon määritettyyn kirjainkoon. Lisäksi muotoilimme merkkijonoa, muokkasimme merkkijonoa ja monia muita toimintoja suoritetaan tässä merkkijonon manipuloimiseksi.