R: mengekstrak substring dari akhir string
Anda dapat menggunakan metode berikut untuk mengekstrak substring di R mulai dari akhir string:
Metode 1: Gunakan Basis R
#define function to extract n characters starting from end substr_end <- function (x, n){ substr(x, nchar(x)-n+ 1 , nchar(x)) } #extract 3 characters starting from end substr_end(my_string, 3 )
Metode 2: Gunakan paket stringr
library (stringr) #extract 3 characters starting from end str_sub(my_string, start = - 3 )
Kedua contoh ini mengekstrak tiga karakter terakhir dari string yang disebut my_string .
Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan kerangka data berikut:
#create data frame
df <- data. frame (team=c('Mavericks', 'Lakers', 'Hawks', 'Nets', 'Warriors'),
dots=c(100, 143, 129, 113, 123))
#view data frame
df
team points
1 Mavericks 100
2 Lakers 143
3 Hawks 129
4 Nets 113
5 Warriors 123
Contoh 1: Ekstrak substring dari akhir menggunakan Base R
Kode berikut menunjukkan cara mendefinisikan fungsi kustom di basis R dan kemudian menggunakan fungsi tersebut untuk mengekstrak tiga karakter terakhir dari setiap string di kolom tim :
#define function to extract n characters starting from end substr_end <- function (x, n){ substr(x, nchar(x)-n+ 1 , nchar(x)) } #create new column that extracts last 3 characters from team column df$team_last3 <- substr_end(my_string, 3 ) #view updated data frame df team points team_last3 1 Mavericks 100 cks 2 Lakers 143ers 3 Hawks 129 wks 4 Nets 113 ets 5 Warriors 123 gold
Perhatikan bahwa kolom baru bernama team_last3 berisi tiga karakter terakhir dari setiap string di kolom tim pada bingkai data.
Contoh 2: Ekstrak substring dari akhir menggunakan paket stringr
Kode berikut menunjukkan cara menggunakan fungsi str_sub() dari paket stringr di R untuk mengekstrak tiga karakter terakhir dari setiap string di kolom tim :
library (stringr) #create new column that extracts last 3 characters from team column df$team_last3 <- str_sub(df$team, start = - 3 ) #view updated data frame df team points team_last3 1 Mavericks 100 cks 2 Lakers 143ers 3 Hawks 129 wks 4 Nets 113 ets 5 Warriors 123 gold
Perhatikan bahwa kolom baru bernama team_last3 berisi tiga karakter terakhir dari setiap string di kolom tim pada bingkai data.
Hal ini sesuai dengan hasil metode sebelumnya yang menggunakan basis R.
Terkait : Pengenalan fungsi str_sub di R
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Cara memilih kolom yang berisi string tertentu di R
Cara menghapus karakter dari string di R
Cara menemukan lokasi karakter dalam string di R