Pengantar dplyr
Pelajaran 6 dari 14 dalam kursus Manipulasi Data dengan R di Coddy.
Package dplyr adalah alat yang ampuh untuk manipulasi data di R. Package ini menyediakan sekumpulan fungsi yang memudahkan kamu mengubah dan menganalisis data frame secara efisien. Dalam pelajaran ini, kita akan berfokus pada tiga fungsi utama: select(), filter(), dan mutate().
Memuat dplyr
Berikut contoh cara memuat package ini:
# Muat dplyr
library(dplyr)Fungsi select()
Fungsi select() memungkinkan kamu memilih kolom tertentu dari sebuah data frame:
# Buat data frame contoh
df <- data.frame(
name = c("Alice", "Bob", "Charlie"),
age = c(25, 30, 35),
city = c("New York", "London", "Paris")
)
# Pilih kolom tertentu
result <- select(df, name, age)
print(result)Output:
name age
1 Alice 25
2 Bob 30
3 Charlie 35Fungsi filter()
Fungsi filter() membantumu memilih sebagian baris berdasarkan kondisi tertentu:
# Saring baris dengan age lebih dari 28
result <- filter(df, age > 28)
print(result)Output:
name age city
1 Bob 30 London
2 Charlie 35 ParisFungsi mutate()
Fungsi mutate() memungkinkan kamu membuat kolom baru atau mengubah kolom yang sudah ada:
# Tambahkan kolom baru 'age_group'
result <- mutate(df, age_group = ifelse(age < 30, "Young", "Adult"))
print(result)Output:
name age city age_group
1 Alice 25 New York Young
2 Bob 30 London Adult
3 Charlie 35 Paris AdultOperator Pipe %>%
dplyr memperkenalkan operator pipe %>%, yang memungkinkan kamu merangkai beberapa operasi:
result <- df %>%
filter(age > 28) %>%
select(name, city) %>%
mutate(location = paste(name, "lives in", city))Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Tantangan
MudahProses data frame informasi karyawan menggunakan fungsi dplyr. Lakukan operasi berikut:
- Pilih hanya kolom "name", "age", dan "salary"
- Filter data agar hanya mencakup karyawan yang berusia 30 tahun atau lebih
- Tambahkan kolom baru bernama "bonus" yang bernilai 10% dari gaji untuk karyawan berusia 40 tahun atau lebih, dan 5% untuk karyawan lainnya
- Urutkan data frame berdasarkan gaji dari yang terbesar ke terkecil
- Cetak data frame hasilnya.
Coba sendiri
# Muat library yang diperlukan
suppressPackageStartupMessages(library(dplyr))
# Baca input
con <- file("stdin", "r")
input_data <- suppressWarnings(readLines(con))
# Buat data frame dari input
df <- read.csv(text = input_data, stringsAsFactors = FALSE)
# TODO: Tulis kodemu di bawah untuk mengolah data frame
process_employee_data <- function(df) {
# Tulis kodemu di sini
# Gunakan fungsi dplyr untuk:
# 1. Pilih kolom
# 2. Saring data
# 3. Tambahkan kolom bonus
# 4. Urutkan berdasarkan gaji
return(df) # Ganti ini dengan data frame yang sudah kamu olah
}
# Olah data frame
result <- process_employee_data(df)
# Cetak hasilnya
print(result)Semua pelajaran di Manipulasi Data dengan R
Latihan sendiri: Compiler R online