Praktikum R Dasar

Tujuan Praktikum

Setelah praktikum ini, Anda mampu:

  1. Menjalankan operasi aritmetika dan fungsi dasar di R.
  2. Mendeklarasikan variabel dan memahami tipe data (numerik, karakter, logika).
  3. Membuat dan memanipulasi vektor serta data frame.
  4. Melakukan analisis statistik sederhana (mean, median, sd, summary).
  5. Membuat grafik dasar dengan plot() dan hist().

Cara belajar yang disarankan: jalankan blok kode satu per satu, amati outputnya, lalu modifikasi nilai/argumen untuk melihat efeknya.


1. Operasi Sederhana di R

R dapat dipakai seperti kalkulator untuk menghitung ekspresi matematika dan menyediakan banyak fungsi bawaan, misalnya max() untuk mencari nilai terbesar.

Hal yang perlu diperhatikan:

  • Fungsi ditulis dengan tanda kurung: nama_fungsi(...)
  • Argumen (input) fungsi dipisahkan dengan koma: max(1, 4, 7)

Interpretasi:

  • 1 + 2 menghasilkan 3
  • max(1, 4, 7) menghasilkan 7 (nilai terbesar)

1.1 Fungsi Statistik Deskriptif

R menyediakan fungsi-fungsi siap pakai untuk merangkum data. Berikut adalah yang paling sering digunakan:

Fungsi Keterangan Contoh
mean(x) Rata-rata mean(c(2, 4, 6)) = 4
median(x) Nilai tengah median(c(1, 3, 9)) = 3
min(x) Nilai terkecil min(c(5, 1, 8)) = 1
max(x) Nilai terbesar max(c(5, 1, 8)) = 8
sd(x) Standar deviasi sd(c(2, 4, 6)) = 2
summary(x) Ringkasan lengkap min, Q1, median, mean, Q3, max

1.2 Cara Memasukkan Data ke R

Ada tiga cara utama untuk memasukkan data ke R:

A. Input langsung sebagai vektor: cocok untuk data kecil:

B. Membaca dari file CSV: paling umum untuk data tabel:

# Membaca file CSV dari komputer lokal
data_csv <- read.csv("nama_file.csv")

# Jika pemisah desimal koma (format Eropa/Indonesia)
data_csv <- read.csv2("nama_file.csv")

# Menampilkan 6 baris pertama
head(data_csv)

C. Membaca dari file Excel: memerlukan paket readxl:

# Install paket (cukup sekali)
install.packages("readxl")

# Muat paket
library(readxl)

# Baca file Excel (sheet pertama secara default)
data_excel <- read_excel("nama_file.xlsx")
data_excel <- read_excel("nama_file.xlsx", sheet = "NamaSheet")

head(data_excel)
  • Vektor c(): Data sedikit, diketik langsung di skrip. Cocok untuk latihan dan contoh singkat.
  • read.csv(): Data sudah tersimpan sebagai file .csv (bisa diekspor dari Excel). Tidak perlu paket tambahan.
  • read_excel(): Data asli berformat .xlsx dan tidak ingin dikonversi terlebih dahulu. Membutuhkan paket readxl.

Latihan 1: Operasi Dasar

Hitung 10 dibagi 4, lalu hitung 10 pangkat 2! Cari nilai minimum dari 10, 5, 20.

10 / 4
10 ^ 2
min(10, 5, 20)

2. Jenis-jenis Variabel dan Tipe Data

Dalam R, variabel digunakan untuk menyimpan data. Anda bisa menyimpan berbagai jenis (tipe) data ke dalam variabel menggunakan simbol panah <-.

Berikut adalah tipe data yang paling sering digunakan di R:

  1. Numeric: Angka (bisa desimal atau bulat). Contoh: 10.5, 42.
  2. Character / String: Teks. Harus diapit tanda kutip " ". Contoh: "Halo".
  3. Logical: Nilai kebenaran (Boolean). Hanya bernilai TRUE atau FALSE.
  4. Factor: Data kategorikal (memiliki tingkatan atau kelompok tertentu).

Gunakan fungsi class() untuk mengecek tipe data suatu variabel.

Character murni hanya menyimpan teks. Factor menyimpan teks sebagai kategori yang memiliki level (kelompok). Factor sangat penting dalam analisis statistik untuk merepresentasikan variabel seperti “Jenis Kelamin” atau “Tingkat Pendidikan”.

Latihan 2: Membuat Variabel

Lengkapi kode di bawah ini untuk membuat variabel dengan tipe data yang sesuai!

umur <- 20
nama <- "Budi" # (Atau nama Anda)
apakah_mahasiswa <- TRUE
class(nama)

3. Analisis Statistik Sederhana

Dalam R, data sering disimpan dalam:

  • Vektor (vector): kumpulan nilai 1 dimensi yang memiliki tipe data yang sama.
  • Data frame: tabel yang terdiri dari baris dan kolom.

Di bagian ini kita menerapkan fungsi-fungsi statistik deskriptif, mean(), median(), min(), max(), sd(), dan summary(), pada data nyata.

3.1 Statistik Deskriptif pada Vektor

Gunakan c() (kombinasi) untuk membuat vektor, lalu terapkan berbagai fungsi statistik sekaligus.

Interpretasi: Perhatikan selisih antara mean dan median. Jika keduanya dekat, distribusi data cenderung simetris. Jika mean jauh lebih besar dari median, ada kemungkinan nilai ekstrem (outlier) yang menarik rata-rata ke atas.

3.2 Statistik Deskriptif pada Kolom Data Frame

data.frame() membentuk tabel. Setiap kolom adalah vektor. Untuk mengambil kolom tertentu dari sebuah data frame, gunakan tanda dolar $, misalnya tabel_data$kolom1.

Simbol $ adalah operator penunjuk di R. Tulisannya dibaca: “Dari hasil_ujian, tolong ambilkan kolom bernama kelas_A saja”. summary() tanpa $ merangkum seluruh data frame sekaligus.

Latihan 3: Menghitung Statistik Data Frame

Gunakan data hasil_ujian di atas. Hitung median dan nilai maksimum untuk kelas_B, hitung standar deviasi kelas_C, lalu tampilkan ringkasan seluruh tabel!

median(hasil_ujian$kelas_B)
max(hasil_ujian$kelas_B)
sd(hasil_ujian$kelas_C)
summary(hasil_ujian)

Bandingkan standar deviasi ketiga kelas, kelas mana yang nilai ujiannya paling seragam?


4. Menggambar Grafik

R memiliki fungsi dasar plot() untuk membuat grafik dengan cepat. Ini sering dipakai untuk eksplorasi awal sebelum menggunakan paket visualisasi lanjutan seperti ggplot2.

4.1 Grafik Titik (Scatter)

  • plot(x, y) menggambar satu titik pada koordinat (x, y)
  • Jika x dan y adalah vektor, R menggambar banyak titik

4.2 Mengubah Tampilan Titik dan Garis

Argumen yang sering dipakai untuk mempercantik grafik:

  • type: "p" (titik), "l" (garis), "b" (keduanya)
  • main: judul grafik
  • xlab & ylab: label sumbu
  • col: warna
  • cex: ukuran titik
  • pch: bentuk titik (angka 1-25)

4.3 Histogram

Histogram menampilkan distribusi frekuensi data, seberapa sering nilai jatuh di setiap interval. Gunakan fungsi hist().

Cara membaca histogram:

  • Batang tertinggi: rentang nilai yang paling sering muncul
  • Distribusi simetris: data terpusat di tengah, tidak ada nilai ekstrem dominan
  • Condong kanan (right-skewed): sebagian besar data kecil, ada ekor panjang ke nilai besar

Latihan 4: Modifikasi Grafik

Ganti bentuk titik menjadi bentuk segitiga (pch = 17), warnanya menjadi merah ("red"), dan ubah judulnya menjadi "Grafik Merah"!

plot(1:15, 
     main = "Grafik Merah", 
     xlab = "Sumbu X", 
     ylab = "Sumbu Y",
     type = "b", 
     col  = "red", 
     cex  = 2, 
     pch  = 17)

Latihan 5: Scatter Plot dan Histogram dari Data Sendiri

Berikut adalah data tinggi badan (cm) dan berat badan (kg) dari sekelompok mahasiswa. Input data sebagai vektor, lalu buat visualisasinya.

Pertanyaan Reflektif

Jika mean dan median nilainya berdekatan, distribusi cenderung simetris, tidak ada nilai ekstrem yang mendominasi ke satu sisi. Perhatikan apakah perbedaannya kecil atau besar.

Sekarang buat scatter plot tinggi vs. berat badan:

Perhatikan arah sebaran titik. Jika titik-titik cenderung naik dari kiri ke kanan, ada hubungan positif, orang lebih tinggi cenderung lebih berat. Jika menyebar acak, hubungannya lemah atau tidak ada.

Dan buat histogram distribusi tinggi badan:

Perhatikan batang yang paling tinggi, itulah rentang yang paling sering muncul. Jika bentuk histogram menyerupai lonceng simetris, distribusinya mendekati normal. Jika condong ke salah satu sisi, ada dominasi nilai rendah atau tinggi.

# Scatter plot
plot(
  x    = tinggi,
  y    = berat,
  main = "Hubungan Tinggi dan Berat Badan Mahasiswa",
  xlab = "Tinggi Badan (cm)",
  ylab = "Berat Badan (kg)",
  col  = "steelblue",
  pch  = 16
)

# Histogram
hist(
  tinggi,
  main   = "Distribusi Tinggi Badan Mahasiswa",
  xlab   = "Tinggi Badan (cm)",
  ylab   = "Frekuensi",
  col    = "coral",
  breaks = 6
)

Scatter plot menunjukkan hubungan positif: semakin tinggi badan, berat badan cenderung semakin besar. Histogram tinggi badan terlihat cukup simetris dengan puncak di kisaran 165–175 cm.