R:n substring() on hyö­dyl­li­nen ana­ly­soi­ta­vien tietojen val­mis­te­lus­sa. Sitä voidaan käyttää esi­mer­kik­si teks­ti­da­tan muun­ta­mi­seen paremmin jä­sen­nel­tyi­hin muotoihin.

Mihin R:n substring() -funktiota käytetään?

R: substring() on si­sään­ra­ken­net­tu funktio, joka valitsee osan olemassa olevasta merk­ki­jo­nos­ta. Sen avulla voidaan mää­ri­tel­lä tarkasti alku- ja lop­puin­dek­sit, jotta voit eristää tar­vit­se­ma­si osan merk­ki­jo­nos­ta. Funk­tiol­la on monia käyt­tö­tar­koi­tuk­sia, kuten tietojen puh­dis­ta­mi­nen ja tiettyjen tietojen poi­mi­mi­nen jä­sen­ty­mät­tö­mis­tä teks­ti­tie­dois­ta. Voit käyttää sitä esi­mer­kik­si pos­ti­nu­me­roi­den poi­mi­mi­seen osoit­teis­ta tai päi­vä­mää­rien poi­mi­mi­seen ai­ka­lei­mois­ta.

substring() on joustava ti­lan­teis­sa, joissa vaaditaan va­lit­tu­jen osa­merk­ki­jo­no­jen sijainnin ja pituuden tarkkaa hallintaa. Me­ne­tel­mää käytetään usein data-ana­lyy­seis­sä ja teks­ti­da­tan val­mis­te­lus­sa jat­ko­kä­sit­te­lyä varten.

Mikä on R-kielessä substring() syntaksi?

substring() palauttaa merk­ki­jo­non osan, joka on erotettu, ja ottaa seuraavat pa­ra­met­rit:

substring(x, first, last)
R
  • x: Merk­ki­jo­no, josta osamerkki otetaan
  • first: Poi­mit­ta­van osa­merk­ki­jo­non al­ku­merk­ki (en­sim­mäi­nen merkki)
  • last: Poi­mit­ta­van osa­merk­ki­jo­non lop­puin­dek­si (viimeinen merkki)

Kat­so­taan­pa esi­merk­kiä.

original_string <- "data analysis"
result <- substring(original_string, 1, 4)
print(result)
# Output: data
R

Tässä esi­mer­kis­sä va­lit­sem­me merk­ki­jo­non "data analysis" osa­merk­ki­jo­non in­dek­sis­tä 1 indeksiin 4 ja tal­len­nam­me sen muut­tu­jaan result. Tuloksena on "data".

Mitä käytännön so­vel­luk­sia R:n substring()llä on?

Kun kä­sit­te­let tie­to­jouk­ko­ja, joudut usein va­lit­se­maan, muok­kaa­maan tai poimimaan tiettyjä merk­ki­jo­no­jen osia. Voit käyttää R:n substring() tähän eri tavoin.

Merkkien poiminta substring():llä

Voit tallentaa indeksit muut­tu­jiin ja syöttää ne sitten ar­gu­ment­tei­na substring().

# Original string
original_string <- "Data Science"
# Indices for extraction
start_index <- 6
end_index <- 12
# Using substring() for extraction
extracted_substring <- substring(original_string, start_index, end_index)
print(extracted_substring)
# Output: Science
R

Tämä esimerkki osoittaa, mitä substring() tekee. Al­ku­pe­räi­ses­tä merk­ki­jo­nos­ta "Data Science" valittiin osajono, joka alkaa kohdasta 6 ja päättyy kohtaan 12. Mää­ri­tim­me muuttujan start_index al­ku­pis­teek­si ja muuttujan end_index lop­pu­pis­teek­si. Tuloksena näkyy poimittu osajono, tässä ta­pauk­ses­sa "Science". Lop­puin­dek­sin arvo 12 on inklusii­vi­nen, mikä tar­koit­taa, että merkki kohdasta 12 sisältyy osajonoon.

Merk­ki­jo­no­jen ma­ni­pu­loin­ti R:n substring()

Ensin luomme data-kehyksen df, joka sisältää tunnukset, iät ja ammatit. Sitten käytämme substring() funktiota li­sä­täk­sem­me vä­li­lyön­nin jokaisen merk­ki­jo­non toiseen asemaan tunnus-sa­rak­kees­sa.

# Creating a sample data frame
df <- data.frame(
    ID = c("01235", "02345", "04531"),
    Age = c(25, 30, 22),
    Occupation = c("Engineer", "Doctor", "Teacher")
)
# Inserting a space in the second position in the "ID" column
df$ID <- paste(substring(df$ID, 1, 1), " ", substring(df$ID, 2))
# Displaying the modified data frame
print("Modified Data Frame:")
print(df)
R

Tässä esi­mer­kis­sä substring() poimii jokaisen luvun en­sim­mäi­sen numeron (substring(df$ID, 1, 1) ja loput nu­me­ro­sar­jas­ta toisesta si­jain­nis­ta alkaen (substring(df$ID, 2)). Sitten näiden kahden merk­ki­jo­non väliin lisätään vä­li­lyön­ti R paste-ko­men­nol­la. Tulos näkyy data-kehyksen ID-sa­rak­kees­sa.

Tulostus näyttää seu­raa­val­ta:

Modified Data Frame:
    ID           Age  Occupation
1  0 1235  25     Engineer
2  0 2345  30     Doctor
3  0 4531  22     Teacher
R
Siirry pää­va­lik­koon