Data Science Programming

Praktikum Pemrograman Data Science

Logo

Praktikum

1.8.1 Mengidentifikasi Tipe Data

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

# Mencetak tipe data 
hasil <- paste(
  "Tipe data dari setiap variabel:\n",
  "a:", class(a), "\n",
  "b:", class(b), "\n",
  "c:", class(c), "\n",
  "d:", class(d), "\n",
  "e:", class(e), "\n",
  "f:", class(f), "\n"
)
cat(hasil)
## Tipe data dari setiap variabel:
##  a: numeric 
##  b: numeric 
##  c: character 
##  d: logical 
##  e: numeric 
##  f: list

1.8.2 Variabel dan Manipulasi Data

# Mendefinisikan variabel
x <- 20
y <- 5
text1 <- "Data"
text2 <- "Science"

# 1. Perbarui nilai x dengan menambahkan 10
x <- x + 10

# 2. Gabungkan text1 dan text2 menjadi "Data Science"
gabungan <- paste(text1, text2)

# 3. Ubah teks yang digabungkan menjadi huruf besar
gabungan_upper <- toupper(gabungan)

# Gunakan invisible() agar tidak tampil di output
invisible({
  cat("Nilai x setelah diperbarui:", x, "\n")
  cat("Teks gabungan:", gabungan, "\n")
  cat("Teks gabungan dalam huruf besar:", gabungan_upper, "\n")
})
## Nilai x setelah diperbarui: 30 
## Teks gabungan: Data Science 
## Teks gabungan dalam huruf besar: DATA SCIENCE

1.8.3 Operasi Aritmatika

# Mendefinisikan variabel
a <- 15
b <- 4

# 1. Hitung jumlah, perbedaan, produk, pembagian, dan modulo
jumlah <- a + b      # Penjumlahan
perbedaan <- a - b   # Pengurangan
produk <- a * b      # Perkalian
pembagian <- a / b   # Pembagian
modulo <- a %% b     # Modulo

# Menampilkan hasil
jumlah
## [1] 19
perbedaan
## [1] 11
produk
## [1] 60
pembagian
## [1] 3.75
modulo
## [1] 3
# 2. Pangkat (a^b)
pangkat <- a ^ b
pangkat
## [1] 50625
# 3. Membuat variabel baru dengan hasil pembagian sebagai bilangan bulat
c <- a %/% b
c
## [1] 3

1.8.4 Operasi String

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

# Menghitung jumlah huruf
letter_count <- nchar(gsub(" ", "", text))

# Mengubah teks menjadi huruf kecil
lowercase_text <- tolower(text)

# Menampilkan hasil
substring(text, 1, 5)  # Menampilkan 5 karakter pertama
## [1] "Hello"
cat("Jumlah huruf dalam teks:", letter_count, "\n")  # Menampilkan jumlah huruf
## Jumlah huruf dalam teks: 18
cat("Teks huruf kecil:", lowercase_text, "\n")  # Menampilkan teks dalam huruf kecil
## Teks huruf kecil: hello, data science!

1.8.5 Perbandingan dan Operator Logis

x <- 7
y <- 10

hasil <- c(
  x > y,
  x <= y,
  x != y,
  (x > 5) & (y < 20)
)

print(hasil)
## [1] FALSE  TRUE  TRUE  TRUE

1.8.6 Konversi Jenis Data

num_str <- "123"
num_float <- 45.67

num1 <- as.integer(num_str)  # Konversi string ke integer
num2 <- as.integer(num_float)  # Konversi float ke integer
num3 <- as.character(num2)  # Konversi integer ke string

print(num1 + 1)  # Cetak num1 + 1
## [1] 124
print(num2)  # Cetak num2
## [1] 45
print(num3)  # Cetak num3
## [1] "45"

Tantangan “BONUS”

# Meminta input dari pengguna secara manual
nama <- readline("Masukkan nama: ")
## Masukkan nama:
umur <- readline("Masukkan umur: ")
## Masukkan umur:
kampung_halaman <- readline("Masukkan kampung halaman: ")
## Masukkan kampung halaman:
# Simpan input agar bisa dipakai di R Markdown
assign("nama", nama, envir = .GlobalEnv)
assign("umur", umur, envir = .GlobalEnv)
assign("kampung_halaman", kampung_halaman, envir = .GlobalEnv)

# Menampilkan output dari input manual
hasil <- sprintf("Hello %s, you are %s years old and from %s.", nama, umur, kampung_halaman)


# Output ditampilkan di R Markdown (Bookdown)
hasil
## [1] "Hello , you are  years old and from ."
nama <- ("M. Ragil Rizki Mulya")
usia <- ("18")
kota <- ("Riau")

cat("Hello",nama, ", you are",usia , "years old and from", kota, ".\n")
## Hello M. Ragil Rizki Mulya , you are 18 years old and from Riau .