Kursus
String adalah karakter yang dibuat dari satu karakter atau berisi kumpulan karakter. String diapit oleh tanda petik tunggal ('Ini adalah string') atau tanda petik ganda ("Ini juga string"). Namun, dalam representasi internal R, string diwakili dengan tanda petik ganda.
Dalam tutorial ini, Anda akan mempelajari tentang string di R, dan kami akan membahas topik-topik berikut.
- Pertama, Anda akan melihat String di R dan Aturan untuk String di R.
- Setelah itu, Anda akan mendalami Penggabungan (Concatenation) String di R beserta properti penting string lainnya.
- Selain itu, Mengekstrak dan Mengganti String Karakter dijelaskan secara rinci.
- Terakhir, Memformat String, yakni mengonversi input vektor apa pun ke format yang tertata.
Aturan untuk String di R
- String yang dimulai dengan tanda petik tunggal harus diakhiri dengan tanda petik tunggal. Namun, Anda dapat menempatkan tanda petik ganda, dan melalui Escape Sequence ('\') tanda petik tunggal juga dapat menjadi bagian dari string.
Contoh: 'cars', 'merry"s' , 'merry\'s' adalah string yang valid di R.
- String yang dimulai dengan tanda petik ganda harus diakhiri dengan tanda petik ganda. Namun, Anda dapat menempatkan tanda petik tunggal, dan melalui Escape Sequence ('\'), tanda petik ganda juga dapat menjadi bagian dari string.
Contoh: "cars" , "merry's", "merry\"s" juga merupakan string yang valid di R.
Penggabungan (Concatenation) String
Penggabungan string adalah membuat string bergabung atau menyatu.
Sintaks untuk menggabungkan string di R dilakukan dengan:paste(..., sep = "",collapse = NULL)paste0(..., collapse = NULL)
Argumen di atas pada paste menyatakan bahwa:
- '...'- Menunjukkan satu atau lebih karakter atau objek yang dikonversi menjadi vektor karakter.
- 'sep'- Menunjukkan karakter pemisah
- 'collapse'- Menunjukkan karakter pemisah opsional.
Sebagai contoh, perhatikan contoh di bawah ini di mana variabel berisi string karakter:
my.var1 = "I"
my.var2 = "eat"
my.var3 = "rice"
print(paste(my.var1,my.var2,my.var3))
Kode di atas menghasilkan satu string seperti di bawah ini:
"I eat rice"
Sebagai contoh, perhatikan contoh di bawah ini di mana variabel berisi vektor yang dikonversi menjadi satu string:
my.var1 = c('Book','Copy')
my.var2 = c('Pen','Chair')
print(paste(my.var1,my.var2,sep=" ",collapse="-"))
Kode di atas memberikan keluaran berikut:
"Book Pen-Copy Chair"
Di sini, keluaran berisi '-' di antara Pen dan Copy karena penggunaan collapse, yang membuat pemisahan antara dua vektor yang berbeda. Sebaliknya, sep menyertakan spasi (' '), tempat tiap item dipisahkan olehnya.
Mari pertimbangkan contoh yang menggunakan paste0()
paste0() mengambil argumen sep =,'' yaitu tanpa spasi dan digunakan karena efisiensinya.
state.name <- paste0('Mary','l','and')
print(state.name)
Keluaran dari kode di atas ada di bawah ini di mana semua karakter digabung menjadi satu, dan tidak ada spasi terpisah melalui sep.
"Maryland"
Menentukan Panjang
nchar(char,type, allowNA,keepNA) - Menentukan jumlah total karakter dalam suatu vektor tertentu.
nzchar(char)- Mengembalikan TRUE jika x tidak kosong dan FALSE jika berisi string kosong.
Argumen di atas pada paste menyatakan bahwa:
- char- Menunjukkan vektor karakter.
- type- Menunjukkan salah satu dari tiga jenis, yaitu "width","chars","bytes".
- allowNA- Menunjukkan nilai logika default FALSE dan jika hasil tidak dapat dihitung tidak akan menjadi error tetapi mengembalikan NA.
- keepNA- Menunjukkan nilai logika default FALSE di mana nilai yang hilang akan dipetakan ke 2 dan nzchar() akan memberikan TRUE, tetapi keduanya juga akan dipetakan ke TRUE dalam kasus nilai yang hilang.
Pada contoh di bawah ini untuk menentukan panjang vektor karakter.
my.char = nchar("hello")
print(my.char)
Contoh di atas mengembalikan '5' sebagai keluaran karena ada lima karakter dalam vektor.
Untuk contoh penggunaan nzchar() mari lihat kode di bawah ini:
new.char = nzchar("monkey")
print(new.char)
Kode di atas memberikan nilai logika 'TRUE' karena 'new.char' bukan string kosong.
my.char = nzchar("")
print(my.char)
Kode di atas memberikan nilai logika 'FALSE' karena 'my.char' adalah string kosong.
Mengubah ke Huruf Besar dan Huruf Kecil
toupper(char) - Mengubah semua karakter yang ada menjadi huruf besar.
tolower(char) - Mengubah semua karakter yang ada menjadi huruf kecil.
Mari lihat contoh untuk mengubah menjadi huruf besar.
my.var = toupper("I'm changed to upper case")
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana setiap karakter dalam variabel 'my.var' berubah menjadi huruf besar.
"I'M CHANGED TO UPPER CASE"
Mari lihat contoh untuk mengubah menjadi huruf kecil.
my.var = tolower("I'm changed to lower case")
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana setiap karakter dalam variabel 'my.var' berubah menjadi huruf kecil.
""i'm changed to lower case""
Mengekstrak dan Mengganti String Karakter
substr(char, start, stop): Mengekstrak dan Mengganti string karakter.
Argumen di atas menyatakan bahwa:
- char- Menunjukkan string karakter.
- start - Menunjukkan bilangan bulat yang menentukan nilai awal yang sesuai untuk dikembalikan.
- stop - Menunjukkan bilangan bulat yang menentukan nilai akhir yang sesuai untuk dikembalikan.
Mari lihat contoh lain di mana karakter diekstrak.
final.value <- substring('Remaining', 3, 9)
print(final.value)
Pada kode di atas, 'Remaining' adalah string di mana indeks pertama adalah 'R', yang diindeks sebagai bilangan bulat 1. Karakter terakhir adalah g dengan indeks sebagai bilangan bulat 9.
Kode di atas menampilkan keluaran di bawah ini di mana nilai awal sebagai bilangan bulat 3, yang memiliki karakter yang sesuai ' m ' dalam 'Remaining'. Demikian pula, karakter lain 'ainin' hingga bilangan bulat 9, yang inklusif dengan karakter yang sesuai 'g', dicetak.
"maining"
Mari lihat contoh lain di mana karakter diganti.
y = "Remaining"
substring(y, 3, 5) <- "der"
print(y)
Kode di atas menampilkan keluaran di mana nilai bilangan bulat mulai dari 3 hingga 5 dengan nilai karakter yang sesuai dalam y diganti oleh 'der'.
"Rederning"
substring(char, first, last = 1000000L): Mengekstrak atau Mengganti string karakter.
Argumen di atas menyatakan bahwa:
- char- Menunjukkan string karakter.
- first - Menunjukkan bilangan bulat yang menentukan nilai pertama yang sesuai untuk dikembalikan.
- last - Menunjukkan bilangan bulat yang menentukan nilai terakhir yang sesuai untuk dikembalikan dan default-nya 1000000L.
my.value <- substring('Remaining', 3, 8)
print(my.value)
Kode di atas menampilkan keluaran di bawah ini di mana nilai awal sebagai bilangan bulat 3, yang memiliki karakter yang sesuai ' m ' dalam 'Remaining'. Demikian pula, karakter lain hingga bilangan bulat 8, yang inklusif dengan karakter yang sesuai 'n', dicetak.
"mainin"
Mari lihat contoh lain di mana karakter diganti.
y = "newcharacter"
substring(y, 6,9) <- "???"
print(y)
Kode di atas menampilkan keluaran di mana nilai bilangan bulat mulai dari 6 hingga 9 dengan nilai karakter yang sesuai dalam y diganti oleh '???'.
"newch???cter"
Memformat String
format(char,width,scientific,justify,nsmall,digits): Mengonversi vektor bilangan bulat dan karakter ke format yang umum digunakan.
Argumen di atas menyatakan bahwa:
- char - dapat berupa vektor bilangan bulat atau karakter.
- width - menunjukkan lebar minimum string yang dihasilkan.
- scientific - default FALSE tetapi gunakan TRUE untuk notasi ilmiah.
- justify - default none tetapi dapat menampilkan string ke "right", "left", dan "center".
- nsmall - menunjukkan jumlah total setelah tanda desimal
- digits - menunjukkan jumlah total sebelum dan sesudah tanda desimal.
Mari ambil contoh memformat string untuk notasi ilmiah.
my.var <- format(c(2, 19.267), scientific = TRUE)
print(my.var)
Kode di atas menampilkan keluaran yang diekspresikan dalam notasi ilmiah atau eksponensial
"2.0000e+00" "1.9267e+01"
Keluaran "1.9267e+01" = 1,9267 x 10 (pangkat 1) = 1,9267x10 = 19,267.
Mari ambil contoh pemformatan menggunakan nsmall.
my.var <- format(92.56656577, nsmall = 6)
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana 6 angka setelah tanda desimal disertakan.
"92.566565"
Mari ambil contoh pemformatan menggunakan digits.
my.var <- format(102.848793834, digits = 7)
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana angka sebelum tanda desimal hingga angka setelah tanda desimal disertakan.
"102.8488"
Tujuh angka disertakan sebagai keluaran di mana digit terakhir seharusnya 7, tetapi karena angka sebelumnya, yaitu 9 lebih besar dari 7, ia naik menjadi 8. Sederhananya, terjadi pembulatan.
Mari ambil contoh pemformatan menggunakan perataan kanan.
my.var <- format('Running', justify = 'r',width = 9)
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana karakter 'Running' diratakan ke kanan dengan spasi pada lebar tertentu.
" Running"
Mari ambil contoh pemformatan menggunakan karakter justify di tengah.
my.var <- format('Running', justify = 'c',width = 12)
print(my.var)
Kode di atas memberikan keluaran seperti di bawah ini di mana karakter 'Running' diratakan ke tengah dengan spasi lebar di kanan dan kiri.
" Running "
Selamat
Selamat, Anda telah mencapai akhir dari tutorial ini!
Anda telah mempelajari tentang String di R: aturannya, penggabungan, beserta properti penting string, Mengekstrak dan Mengganti String Karakter, serta memformat string.
Jika Anda ingin mempelajari lebih lanjut tentang R, ikuti kursus Introduction to R dari DataCamp.
Lihat tutorial kami Data Types in R.
