Part 11 — Package & Library

Install, load, dan mengelola package di R: CRAN, install.packages, library, renv, dan conflicts.
Fundamental
Package
Diterbitkan

26 Februari 2026

Fundamental Series — Part 11 of 20

R punya ekosistem package yang sangat kaya. Memahami cara install, load, dan mengelola package adalah skill dasar yang penting.


Install Package

# Dari CRAN (repository resmi)
install.packages("dplyr")
install.packages(c("ggplot2", "tidyr", "readr"))

# Dari GitHub
# install.packages("remotes")
remotes::install_github("tidyverse/dplyr")

Load Package

# library() — error jika belum install
library(dplyr)

# require() — return FALSE jika gagal (untuk conditional)
if (!require(dplyr)) install.packages("dplyr")

# Panggil fungsi tanpa load
dplyr::filter(df, x > 5)
Catatanlibrary() vs require()

Gunakan library() di script — gagal keras jika package tidak ada. Gunakan require() hanya di dalam fungsi/conditional.


Cek Package Terinstall

# Daftar semua package
installed.packages()[, "Package"]

# Cek satu package
"dplyr" %in% rownames(installed.packages())

# Info versi
packageVersion("dplyr")

# Update package
update.packages(ask = FALSE)

Namespace & Conflicts

library(dplyr)
# Warning: filter masks stats::filter

# Masalah: fungsi dplyr::filter vs stats::filter
# Solusi 1: panggil eksplisit
dplyr::filter(df, x > 5)
stats::filter(ts_data, rep(1/3, 3))

# Solusi 2: paket conflicted
library(conflicted)
conflict_prefer("filter", "dplyr")

Package Populer untuk Data Science

Package Fungsi
dplyr Manipulasi data
ggplot2 Visualisasi
tidyr Reshape data
readr Import CSV/TSV
readxl Import Excel
haven Import SPSS/Stata/SAS
stringr Manipulasi string
lubridate Tanggal & waktu
purrr Functional programming
forcats Manipulasi factor

Reproducibility dengan renv

# Inisialisasi renv di project
renv::init()

# Snapshot dependencies saat ini
renv::snapshot()

# Restore dependencies dari lockfile
renv::restore()
TipKenapa renv?

renv mencatat versi exact setiap package yang digunakan project. Jadi orang lain bisa mereproduksi environment yang sama persis.


Latihan

BahayaLatihan 11.1
# 1. Install dan load package "janitor"
# 2. Cek versinya
# 3. Lihat fungsi apa saja yang tersedia: ls("package:janitor")

Ringkasan

Fungsi Keterangan
install.packages() Install dari CRAN
library() Load package
pkg::fungsi() Panggil tanpa load
packageVersion() Cek versi
conflicted Handle namespace conflicts
renv Reproducible environments

Sebelumnya: Part 10 — Missing Values Selanjutnya: Part 12 — Import & Export Data