Data Science Programming

Practicum 1

Mohammad Riyadh

Basic Program Data Science

1.8 Practicum

1.8.1 Indentifiying Data Types

SOAL

a = 42

b = 3.14

c = “Hello”

d = FALSE

e = [1, 2, 3]

f = {“name”: “Alice”, “age”: 25}

Identifikasi lalu cetak menggunakan class ().


JAWABAN

a <- 42
b <- 3.14
c <- "Hello"
d <- FALSE
e <- list(1, 2, 3)
f <- list(name = "Alice", age = 25)

cat(
"Type of a:", class(a), "\n",
"Type of b:", class(b), "\n",
"Type of c:", class(c), "\n",
"Type of d:", class(d), "\n",
"Type of e:", class(e), "\n",
"Type of f:", class(f), "\n"
)
## Type of a: numeric 
##  Type of b: numeric 
##  Type of c: character 
##  Type of d: logical 
##  Type of e: list 
##  Type of f: list

1.8.2 Variables and Data Manipulation

SOAL

x = 20

y = 5

text1= “Data”

text2= “Science”

-Memperbarui nilai x dengan menambahkan 10.

-Menggabungkan text1 dan text2 ke dalam “Data Science”.

-Mengubah teks gabungan menjadi huruf besar.


JAWABAN

x <- 20
y <- 5
text1 <- "Data"
text2 <- "Science"

# Menggunakan operator langsung
x <- x + 10  
combined_text <- paste(text1, text2)  # Gabungkan text1 dan text2
uppercase_text <- toupper(combined_text)  # Mengubah teks menjadi huruf besar

cat(
  "Nilai x:", x, "\n",
  "Teks gabungan:", combined_text, "\n",
  "Teks huruf besar:", uppercase_text, "\n"
)
## Nilai x: 30 
##  Teks gabungan: Data Science 
##  Teks huruf besar: DATA SCIENCE

1.8.3 Arithmetic opration

SOAL

a = 15

b = 4

-Menghitung jumlah, selisih, perkalian, pembagian, dan modulo dari a dan b.

-Menghitung a pangkat b.

-Membuat variable baru c = a / b dan ubah menjadi integer.


JAWABAN

# Definisi variabel
a <- 15
b <- 4

# Operasi Aritmatika
jumlah <- a + b 
selisih <- a - b 
perkalian <- a * b 
pembagian <- a / b 
modulo <- a %% b 
pangkat <- a ^ b  

# Membuat variabel baru dan mengonversinya menjadi integer
c <- a / b
c_int <- as.integer(c)  # Mengubah menjadi integer

# Menampilkan hasil
cat(
  "Jumlah dari a dan b:", jumlah, "\n",
  "Selisih dari a dan b:", selisih, "\n",
  "Perkalian dari a dan b:", perkalian, "\n",
  "Pembagian dari a dan b:", pembagian, "\n",
  "Modulo dari a dan b:", modulo, "\n",
  "Pangkat dari a pangkat b:", pangkat, "\n",
  "Variabel baru c sebagai float:", c, "\n",
  "Variabel baru c sebagai integer:", c_int, "\n"
)
## Jumlah dari a dan b: 19 
##  Selisih dari a dan b: 11 
##  Perkalian dari a dan b: 60 
##  Pembagian dari a dan b: 3.75 
##  Modulo dari a dan b: 3 
##  Pangkat dari a pangkat b: 50625 
##  Variabel baru c sebagai float: 3.75 
##  Variabel baru c sebagai integer: 3

1.8.4 String opration

SOAL

text = “Hello, Data Science!”

-Ekstrak 5 karakter pertama dari teks.

-Menghitung jumlah karakter dalam teks.

-Mengubah teks menjadi huruf kecil.


JAWABAN

# Mendefinisikan data text
text <- "Hello, Data Science!"


karakter_pertama <- substr(text, 1, 5) 
jumlah_karakter <- nchar(text) 
teks_kecil <- tolower(text) 

# Menampilkan hasil
cat(
  "5 karakter pertama:", karakter_pertama, "\n",
  "Jumlah karakter:", jumlah_karakter, "\n",
  "Teks dalam huruf kecil:", teks_kecil, "\n"
)
## 5 karakter pertama: Hello 
##  Jumlah karakter: 20 
##  Teks dalam huruf kecil: hello, data science!

1.8.5 Comparison and logical oprators

SOAL

x = 7

y = 10

-Memeriksa apakah x lebih besar dari y.

-Memeriksa apakah x kurang dari atau sama dengan y**.

-Memeriksa apakah x tidak sama dengan y.

-Mengevaluasi ekspresi ( x > 5 ) AND ( y < 20 )


JAWABAN

# Mendefinisikan variabel
x <- 7
y <- 10

# Operator Perbandingan
hasil_x_lebih_dari_y <- x > y  # False
hasil_x_kurang_sama_y <- x <= y  # True (x kurang dari y)
hasil_x_tidak_sama_y <- x != y  # True

# Operator Logika
hasil_logika <- (x > 5) & (y < 20)  # True

# Menampilkan hasil
cat(
  "Apakah x lebih besar dari y?", hasil_x_lebih_dari_y, "\n",
  "Apakah x kurang dari atau sama dengan y?", hasil_x_kurang_sama_y, "\n",
  "Apakah x tidak sama dengan y?", hasil_x_tidak_sama_y, "\n",
  "Evaluasi (x > 5) AND (y < 20):", hasil_logika, "\n"
)
## Apakah x lebih besar dari y? FALSE 
##  Apakah x kurang dari atau sama dengan y? TRUE 
##  Apakah x tidak sama dengan y? TRUE 
##  Evaluasi (x > 5) AND (y < 20): TRUE

1.8.6 Data Type Conversion

SOAL

num_str= “123”

num_float= 45.67

-Mengubah num_str ke bilangan bulat dan tambahkan 10.

-Mengubah num_float ke bilangan bulat.

-Mengonversi num_float kembali menjadi string.


JAWABAN

# Mendefinisikan variabel
num_str <- "123"
num_float <- 45.67

# Mengubah num_str ke bilangan bulat (integer) dan menambahkan 10
num_int <- as.integer(num_str)

# Mengubah num_float ke bilangan bulat (integer)
num_int_float <- as.integer(num_float)

# Mengonversi num_float kembali menjadi string
num_str_float <- as.character(num_float)

# Menampilkan hasil
cat(
  "Hasil num_str setelah dikonversi ke integer dan ditambah 10:", num_int + 10, "\n",
  "Hasil num_float setelah dikonversi ke integer:", num_int_float, "\n",
  "Hasil num_float setelah dikonversi menjadi string:", num_str_float, "\n"
)
## Hasil num_str setelah dikonversi ke integer dan ditambah 10: 133 
##  Hasil num_float setelah dikonversi ke integer: 45 
##  Hasil num_float setelah dikonversi menjadi string: 45.67

1.9 Bonus Challege

SOAL

  1. Nama

  2. Usia

  3. Kota kelahiran

Kemudian, cetak output sebagai berikut:

“Hello [Name], you are [Age] years old and from [Hometown]”


JAWABAN

nama <- ("Mohammad Riyadh")
usia <- ("20")
kota <- ("Kediri")

cat("Hello",nama, ", you are",usia , "years old and from", kota,".\n")
## Hello Mohammad Riyadh , you are 20 years old and from Kediri .