Praktikum
1.8.1 Identifikasi Data Tipe
a <- 42L
b <- 3.14
c <- "Hello"
d <- FALSE
e <- c(1, 2, 3)
f <- list(name = "Alice", age = 25)
cat(
"Type a:", class(a), "\n",
"Type b:", class(b), "\n",
"Type c:", class(c), "\n",
"Type d:", class(d), "\n",
"Type e:", class(e), "\n",
"Type f:", class(f), "\n"
)## Type a: integer
## Type b: numeric
## Type c: character
## Type d: logical
## Type e: numeric
## Type f: list
Jadi kenapa itu menggunakan 42L?, karena tanpa menggunakan variabel tambahan hasilnya akan numerik bukan integer. Saya juga akan memberi contoh jika tidak diberi variabel sesudah angka 42, Ini adalah contohnya:
a <- 42
b <- 3.14
c <- "Hello"
d <- FALSE
e <- c(1, 2, 3)
f <- list(name = "Alice", age = 25)
cat(
"Type a:", class(a), "\n",
"Type b:", class(b), "\n",
"Type c:", class(c), "\n",
"Type d:", class(d), "\n",
"Type e:", class(e), "\n",
"Type f:", class(f), "\n"
)## Type a: numeric
## Type b: numeric
## Type c: character
## Type d: logical
## Type e: numeric
## Type f: list
1.8.2 Variabel dan Data Manipulasi
x <- 20
y <- 5
text1 <- "Data"
text2 <- "Science"
x <- x + 10
text_combined <- paste(text1, text2)
text_upper <- toupper(text_combined)
cat(
"Updated x:", x, "\n",
"Combined text:", text_combined, "\n",
"Uppercase text:", text_upper, "\n"
)## Updated x: 30
## Combined text: Data Science
## Uppercase text: DATA SCIENCE
1.8.3 Operasi Aritmatika
a <- 15
b <- 4
jumlah <- a + b
selisih <- a - b
produk <- a * b
pembagian <- a / b
modulo <- a %% b
pangkat <- a ^ b
c <- as.integer(a / b)
cat(
"Sum:", jumlah, "\n",
"Difference:", selisih, "\n",
"Product:", produk, "\n",
"Division:", pembagian, "\n",
"Modulo:", modulo, "\n",
"Exponentiation:", pangkat, "\n",
"Integer division result:", c, "\n"
)## Sum: 19
## Difference: 11
## Product: 60
## Division: 3.75
## Modulo: 3
## Exponentiation: 50625
## Integer division result: 3
1.8.4 Operasi String
text <- "Hello, Data Science!"
substring_text <- substr(text, 1, 5)
length_text <- nchar(text)
lower_text <- tolower(text)
cat(
"First 5 characters:", substring_text, "\n",
"Text length:", length_text, "\n",
"Lowercase text:", lower_text, "\n"
)## First 5 characters: Hello
## Text length: 20
## Lowercase text: hello, data science!
1.8.5 Operator dan perbandingan logika
x <- 7
y <- 10
lebih_besar <- x > y
kurang_sama <- x <= y
tidak_sama <- x != y
ekspresi <- (x > 5) & (y < 20)
cat(
"x > y:", lebih_besar, "\n",
"x <= y:", kurang_sama, "\n",
"x != y:", tidak_sama, "\n",
"(x > 5) AND (y < 20):", ekspresi, "\n"
)## x > y: FALSE
## x <= y: TRUE
## x != y: TRUE
## (x > 5) AND (y < 20): TRUE
1.8.6 Konversi Tipe Data
num_str <- "123"
num_float <- 45.67
num_int <- as.integer(num_str) + 10
num_float_int <- as.integer(num_float)
num_float_str <- as.character(num_float)
cat(
"Converted num_str + 10:", num_int, "\n",
"num_float as integer:", num_float_int, "\n",
"num_float as string:", num_float_str, "\n"
)## Converted num_str + 10: 133
## num_float as integer: 45
## num_float as string: 45.67
LS0tDQp0aXRsZTogIlByYWt0aWt1bSINCmF1dGhvcjogDQogIC0gIlphaW4gSXFiYWwgU2FwdXRyYSBOSU0gNTIyNDAwMjQiDQpkYXRlOiAgIkthbWlzLCAxMy8wMi8yMDI1Ig0Kb3V0cHV0Og0KICBybWRmb3JtYXRzOjpyZWFkdGhlZG93bjogICAjIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWJhL3JtZGZvcm1hdHMNCiAgICBzZWxmX2NvbnRhaW5lZDogdHJ1ZQ0KICAgIHRodW1ibmFpbHM6IHRydWUNCiAgICBsaWdodGJveDogdHJ1ZQ0KICAgIGdhbGxlcnk6IHRydWUNCiAgICBudW1iZXJfc2VjdGlvbnM6IGZhbHNlDQogICAgbGliX2RpcjogbGlicw0KICAgIDNkZl9wcmludDogInBhZ2VkIg0KICAgIGNvZGVfZm9sZGluZzogInNob3ciDQogICAgY29kZV9kb3dubG9hZDogeWVzDQotLS0NCg0KPGltZyBzcmM9IkZvdG8uanBnIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOjMwMHB4OyBtYXJnaW46IGF1dG87Ij4NCg0KIyAxLjguMSBJZGVudGlmaWthc2kgRGF0YSBUaXBlDQoNCmBgYHtyLCBtZXNzYWdlPUZBTFNFfQ0KYSA8LSA0MkwNCmIgPC0gMy4xNA0KYyA8LSAiSGVsbG8iDQpkIDwtIEZBTFNFDQplIDwtIGMoMSwgMiwgMykNCmYgPC0gbGlzdChuYW1lID0gIkFsaWNlIiwgYWdlID0gMjUpDQoNCmNhdCgNCiJUeXBlIGE6IiwgY2xhc3MoYSksICJcbiIsDQoiVHlwZSBiOiIsIGNsYXNzKGIpLCAiXG4iLA0KIlR5cGUgYzoiLCBjbGFzcyhjKSwgIlxuIiwNCiJUeXBlIGQ6IiwgY2xhc3MoZCksICJcbiIsDQoiVHlwZSBlOiIsIGNsYXNzKGUpLCAiXG4iLA0KIlR5cGUgZjoiLCBjbGFzcyhmKSwgIlxuIg0KKQ0KYGBgDQoNCkphZGkga2VuYXBhIGl0dSBtZW5nZ3VuYWthbiA0Mkw/LCBrYXJlbmEgdGFucGEgbWVuZ2d1bmFrYW4gdmFyaWFiZWwgdGFtYmFoYW4gaGFzaWxueWEgYWthbiBudW1lcmlrIGJ1a2FuIGludGVnZXIuIFNheWEganVnYSBha2FuIG1lbWJlcmkgY29udG9oIGppa2EgdGlkYWsgZGliZXJpIHZhcmlhYmVsIHNlc3VkYWggYW5na2EgNDIsIEluaSBhZGFsYWggY29udG9obnlhOg0KDQpgYGB7ciwgbWVzc2FnZT1GQUxTRX0NCmEgPC0gNDINCmIgPC0gMy4xNA0KYyA8LSAiSGVsbG8iDQpkIDwtIEZBTFNFDQplIDwtIGMoMSwgMiwgMykNCmYgPC0gbGlzdChuYW1lID0gIkFsaWNlIiwgYWdlID0gMjUpDQoNCmNhdCgNCiJUeXBlIGE6IiwgY2xhc3MoYSksICJcbiIsDQoiVHlwZSBiOiIsIGNsYXNzKGIpLCAiXG4iLA0KIlR5cGUgYzoiLCBjbGFzcyhjKSwgIlxuIiwNCiJUeXBlIGQ6IiwgY2xhc3MoZCksICJcbiIsDQoiVHlwZSBlOiIsIGNsYXNzKGUpLCAiXG4iLA0KIlR5cGUgZjoiLCBjbGFzcyhmKSwgIlxuIg0KKQ0KYGBgDQoNCiMgMS44LjIgVmFyaWFiZWwgZGFuIERhdGEgTWFuaXB1bGFzaQ0KDQpgYGB7ciwgbWVzc2FnZT1GQUxTRX0NCnggPC0gMjANCnkgPC0gNQ0KdGV4dDEgPC0gIkRhdGEiDQp0ZXh0MiA8LSAiU2NpZW5jZSINCg0KeCA8LSB4ICsgMTANCnRleHRfY29tYmluZWQgPC0gcGFzdGUodGV4dDEsIHRleHQyKQ0KdGV4dF91cHBlciA8LSB0b3VwcGVyKHRleHRfY29tYmluZWQpDQoNCmNhdCgNCiJVcGRhdGVkIHg6IiwgeCwgIlxuIiwNCiJDb21iaW5lZCB0ZXh0OiIsIHRleHRfY29tYmluZWQsICJcbiIsDQoiVXBwZXJjYXNlIHRleHQ6IiwgdGV4dF91cHBlciwgIlxuIg0KKQ0KYGBgDQoNCiMgMS44LjMgT3BlcmFzaSBBcml0bWF0aWthDQoNCmBgYHtyLCBtZXNzYWdlPUZBTFNFfQ0KYSA8LSAxNQ0KYiA8LSA0DQoNCmp1bWxhaCA8LSBhICsgYg0Kc2VsaXNpaCA8LSBhIC0gYg0KcHJvZHVrIDwtIGEgKiBiDQpwZW1iYWdpYW4gPC0gYSAvIGINCm1vZHVsbyA8LSBhICUlIGINCnBhbmdrYXQgPC0gYSBeIGINCmMgPC0gYXMuaW50ZWdlcihhIC8gYikNCg0KY2F0KA0KIlN1bToiLCBqdW1sYWgsICJcbiIsDQoiRGlmZmVyZW5jZToiLCBzZWxpc2loLCAiXG4iLA0KIlByb2R1Y3Q6IiwgcHJvZHVrLCAiXG4iLA0KIkRpdmlzaW9uOiIsIHBlbWJhZ2lhbiwgIlxuIiwNCiJNb2R1bG86IiwgbW9kdWxvLCAiXG4iLA0KIkV4cG9uZW50aWF0aW9uOiIsIHBhbmdrYXQsICJcbiIsDQoiSW50ZWdlciBkaXZpc2lvbiByZXN1bHQ6IiwgYywgIlxuIg0KKQ0KYGBgDQoNCiMgMS44LjQgT3BlcmFzaSBTdHJpbmcNCg0KYGBge3IsIG1lc3NhZ2U9RkFMU0V9DQp0ZXh0IDwtICJIZWxsbywgRGF0YSBTY2llbmNlISINCg0Kc3Vic3RyaW5nX3RleHQgPC0gc3Vic3RyKHRleHQsIDEsIDUpDQpsZW5ndGhfdGV4dCA8LSBuY2hhcih0ZXh0KQ0KbG93ZXJfdGV4dCA8LSB0b2xvd2VyKHRleHQpDQoNCmNhdCgNCiJGaXJzdCA1IGNoYXJhY3RlcnM6Iiwgc3Vic3RyaW5nX3RleHQsICJcbiIsDQoiVGV4dCBsZW5ndGg6IiwgbGVuZ3RoX3RleHQsICJcbiIsDQoiTG93ZXJjYXNlIHRleHQ6IiwgbG93ZXJfdGV4dCwgIlxuIg0KKQ0KYGBgDQoNCiMgMS44LjUgT3BlcmF0b3IgZGFuIHBlcmJhbmRpbmdhbiBsb2dpa2ENCg0KYGBge3IsIG1lc3NhZ2U9RkFMU0V9DQp4IDwtIDcNCnkgPC0gMTANCg0KbGViaWhfYmVzYXIgPC0geCA+IHkNCmt1cmFuZ19zYW1hIDwtIHggPD0geQ0KdGlkYWtfc2FtYSA8LSB4ICE9IHkNCmVrc3ByZXNpIDwtICh4ID4gNSkgJiAoeSA8IDIwKQ0KDQpjYXQoDQoieCA+IHk6IiwgbGViaWhfYmVzYXIsICJcbiIsDQoieCA8PSB5OiIsIGt1cmFuZ19zYW1hLCAiXG4iLA0KInggIT0geToiLCB0aWRha19zYW1hLCAiXG4iLA0KIih4ID4gNSkgQU5EICh5IDwgMjApOiIsIGVrc3ByZXNpLCAiXG4iDQopDQpgYGANCg0KIyAxLjguNiBLb252ZXJzaSBUaXBlIERhdGENCg0KYGBge3IsIG1lc3NhZ2U9RkFMU0V9DQpudW1fc3RyIDwtICIxMjMiDQpudW1fZmxvYXQgPC0gNDUuNjcNCg0KbnVtX2ludCA8LSBhcy5pbnRlZ2VyKG51bV9zdHIpICsgMTANCm51bV9mbG9hdF9pbnQgPC0gYXMuaW50ZWdlcihudW1fZmxvYXQpDQpudW1fZmxvYXRfc3RyIDwtIGFzLmNoYXJhY3RlcihudW1fZmxvYXQpDQoNCmNhdCgNCiJDb252ZXJ0ZWQgbnVtX3N0ciArIDEwOiIsIG51bV9pbnQsICJcbiIsDQoibnVtX2Zsb2F0IGFzIGludGVnZXI6IiwgbnVtX2Zsb2F0X2ludCwgIlxuIiwNCiJudW1fZmxvYXQgYXMgc3RyaW5nOiIsIG51bV9mbG9hdF9zdHIsICJcbiINCikNCmBgYA0KDQojIDEuOSBCb251cw0KDQpgYGB7ciwgIHdhcm5pbmc9RkFMU0V9DQpuYW1hIDwtICgiWmFpbiBJcWJhbCBTYXB1dHJhIikNCnVzaWEgPC0gKCIxOCIpDQprb3RhIDwtICgiQmVrYXNpIikNCg0KY2F0KCJIZWxsbyIsbmFtYSwgIiwgeW91IGFyZSIsdXNpYSAsICJ5ZWFycyBvbGQgYW5kIGZyb20iLCBrb3RhLCAiLlxuIikNCmBgYA0KDQoNCg==