Statistik Inferensi II:
Uji Hipotesis
Metode belajar baru diklaim meningkatkan nilai mahasiswa. Obat baru disebut lebih efektif dari yang lama. Bagaimana kita tahu apakah klaim itu benar — bukan hanya kebetulan? Jawabannya adalah uji hipotesis.
1. Konsep Dasar Uji Hipotesis
Uji hipotesis adalah prosedur statistik untuk memutuskan apakah bukti dari data cukup kuat untuk menolak suatu klaim awal.
Dalam pengadilan Indonesia, tersangka dianggap tidak bersalah sampai terbukti bersalah. Hakim tidak membuktikan "tidak bersalah" — sebaliknya, jaksa harus mengumpulkan bukti yang cukup kuat untuk menolak anggapan tidak bersalah itu.
Uji hipotesis bekerja persis sama:
H₀ (null hypothesis) = tersangka tidak bersalah (anggapan awal)
H₁ (alternative hypothesis) = tersangka bersalah (klaim yang ingin dibuktikan)
p-value = kekuatan bukti yang ditemukan
Tolak H₀ = hakim memutus bersalah berdasarkan bukti cukup kuat
Significance Level (α) dan p-value
| Istilah | Definisi | Nilai Umum |
|---|---|---|
| α (alpha) | Batas toleransi kesalahan — probabilitas maksimum kita bersedia salah menolak H₀ padahal H₀ benar | 0.05 (5%) paling umum; 0.01 atau 0.10 |
| p-value | Probabilitas mendapatkan hasil setidaknya sepukul ini (atau lebih ekstrem) jika H₀ benar | Dihitung dari data; dibandingkan dengan α |
| Keputusan | Jika p-value ≤ α → Tolak H₀ (ada bukti signifikan). Jika p-value > α → Gagal menolak H₀ | — |
2. Langkah-Langkah Pengujian Hipotesis
Rumuskan H₀ dan H₁
Tentukan apa yang diasumsikan (H₀) dan apa yang ingin dibuktikan (H₁). Ini harus dilakukan SEBELUM melihat data.
Tentukan Significance Level (α)
Biasanya α = 0.05 (5%). Tentukan juga jenis uji: dua arah (≠), kiri (<), atau kanan (>).
Pilih Uji Statistik yang Tepat
Uji-z (n besar, σ diketahui), Uji-t (n kecil, σ tidak diketahui), Chi-Square (data kategorikal), dll.
Hitung Statistik Uji dan p-value
Gunakan data sampel untuk menghitung nilai statistik uji (z atau t), kemudian cari p-value-nya.
Bandingkan p-value dengan α, Ambil Keputusan
p ≤ α → Tolak H₀. p > α → Gagal menolak H₀. JANGAN katakan "H₀ terbukti benar".
Interpretasikan dalam Konteks
Terjemahkan hasil statistik ke dalam bahasa yang bermakna bagi masalah aslinya.
3. Uji Z dan Uji t
Uji Z = Timbangan industri presisi tinggi — cocok jika Anda sudah tahu karakteristik produk secara pasti (σ diketahui) dan jumlah sampelnya besar (n ≥ 30).
Uji t = Timbangan dapur rumahan — lebih fleksibel, digunakan saat σ tidak diketahui (yang paling umum di dunia nyata) atau sampel kecil (n < 30). Ini yang paling sering kita pakai!
| Jenis Uji | Kapan Digunakan | Statistik Uji | Contoh Kasus |
|---|---|---|---|
| Uji Z satu sampel | σ diketahui, n ≥ 30 | z = (x̄ − μ₀)/(σ/√n) | Apakah rata-rata berat produk pabrik = 500g? |
| Uji t satu sampel | σ tidak diketahui, n berapa saja | t = (x̄ − μ₀)/(s/√n) | Apakah rata-rata nilai kelas = 75? |
| Uji t dua sampel independen | Bandingkan dua kelompok berbeda | t = (x̄₁−x̄₂)/SE | Apakah nilai kelas A ≠ kelas B? |
| Paired t-test | Data berpasangan (sebelum-sesudah) | t = d̄/(s_d/√n) | Apakah pelatihan meningkatkan nilai? |
Contoh Lengkap: Uji t Satu Sampel
Dosen mengklaim rata-rata nilai UAS mata kuliah Statistika di ISTN adalah 75. Sampel 25 mahasiswa diambil, didapat x̄ = 78.4 dan s = 8.5. Dengan α = 0.05, apakah ada bukti bahwa rata-rata populasi ≠ 75?
Rumuskan Hipotesis
H₀: μ = 75 (rata-rata = 75, tidak ada perbedaan)
H₁: μ ≠ 75 (rata-rata berbeda dari 75) → Uji DUA ARAH
α = 0.05, uji dua arah → nilai kritis t dengan df = n−1 = 24
t_kritis = ±2.064 (dari tabel-t, df=24, α/2=0.025)
Hitung Statistik Uji t
t = (x̄ − μ₀) / (s/√n) = (78.4 − 75) / (8.5/√25) = 3.4 / 1.7 = 2.00
Bandingkan: |t_hitung| vs t_kritis
|2.00| < 2.064 → GAGAL menolak H₀
(atau hitung p-value ≈ 0.057 > 0.05 → kesimpulan sama)
Interpretasi
Pada α = 0.05, tidak ada bukti statistik yang cukup bahwa rata-rata nilai UAS berbeda dari 75. Klaim dosen tidak dapat ditolak dengan data ini.
4. Uji Berpasangan (Paired t-test)
Paired t-test digunakan ketika setiap observasi di kelompok pertama berpasangan langsung dengan satu observasi di kelompok kedua — paling umum untuk desain sebelum-sesudah.
Anda ingin tahu apakah program diet 1 bulan efektif menurunkan berat badan. Anda timbang 10 orang sebelum dan sesudah program.
Ini bukan dua kelompok berbeda (independen) — ini orang yang sama diukur dua kali. Kita fokus pada selisih (d = sesudah − sebelum) untuk setiap orang, lalu uji apakah rata-rata selisih berbeda dari nol.
d_i = x_sesudah_i − x_sebelum_i
t = d̄ / (s_d / √n)
d̄ = rata-rata selisih; s_d = std deviasi selisih; n = jumlah pasangan
H₀: d̄ = 0 (tidak ada perubahan); H₁: d̄ ≠ 0 (ada perubahan)
5. Error Tipe I, Tipe II, dan Power of Test
Dalam pengambilan keputusan berbasis data, ada dua jenis kesalahan yang bisa terjadi.
Error Tipe I (False Positive): Tes mengatakan pasien sakit padahal sebenarnya sehat. Pasien panik, menjalani perawatan yang tidak perlu → "alarm palsu".
Error Tipe II (False Negative): Tes mengatakan pasien sehat padahal sebenarnya sakit. Penyakit tidak terdeteksi → jauh lebih berbahaya!
False Positive — menyimpulkan ada efek padahal tidak
Power = 1 − β
—
False Negative — gagal mendeteksi efek yang nyata
| Jenis Error | Notasi | Deskripsi | Cara Mengurangi |
|---|---|---|---|
| Tipe I | α (alpha) | Tolak H₀ padahal H₀ benar — "alarm palsu" | Kecilkan α (misal dari 0.05 → 0.01) |
| Tipe II | β (beta) | Gagal tolak H₀ padahal H₁ benar — "melewatkan efek nyata" | Perbesar n (ukuran sampel) |
| Power of Test | 1 − β | Probabilitas benar mendeteksi efek yang ada | Power ≥ 0.80 dianggap cukup baik |
Mengurangi α (Tipe I) akan meningkatkan β (Tipe II) — dan sebaliknya. Tidak bisa mengurangi keduanya sekaligus tanpa menambah ukuran sampel.
Seperti jaring ikan: jaring kecil (α ketat) — banyak ikan besar yang lolos (β tinggi). Jaring lebih besar (n besar) — bisa tangkap lebih banyak tanpa melepas yang tidak perlu.
6. Uji Chi-Square untuk Data Kategorikal
Uji Chi-Square (χ²) digunakan untuk menguji apakah ada hubungan antara dua variabel kategorikal, atau apakah distribusi data sesuai dengan yang diharapkan.
Apakah preferensi warna smartphone (merah/biru/hitam) berbeda antara mahasiswa laki-laki dan perempuan? Atau apakah distribusinya sama?
Kita tidak bisa pakai uji-t karena datanya kategorikal (bukan angka). Di sinilah Chi-Square bekerja — membandingkan frekuensi yang terobservasi dengan frekuensi yang diharapkan jika tidak ada hubungan.
| Matematika | Statistika | Informatika | Total | |
|---|---|---|---|---|
| Laki-laki | 30 | 20 | 50 | 100 |
| Perempuan | 40 | 30 | 30 | 100 |
| Total | 70 | 50 | 80 | 200 |
χ² = Σ [(O_ij − E_ij)² / E_ij]
O = frekuensi terobservasi; E = frekuensi diharapkan = (total baris × total kolom) / grand total
df = (jumlah baris − 1) × (jumlah kolom − 1)
H₀: Tidak ada hubungan antara kedua variabel (independen)
H₁: Ada hubungan antara kedua variabel
7. Kesalahan Umum dalam Interpretasi p-value
p-value adalah konsep yang paling sering disalahpahami dalam statistika. Bahkan jurnal ilmiah ternama pun sering salah mendeskripsikannya.
Benar: "Pada tingkat signifikansi 5%, terdapat bukti statistik yang cukup untuk menolak hipotesis bahwa rata-rata nilai sama dengan 75 (t = 2.34, p = 0.028)."
Selalu sebutkan: nilai statistik uji (t/z/χ²), df, p-value, dan α yang digunakan!
8. Praktik: Uji Hipotesis dengan Python
8.1 Uji t Satu Sampel
import numpy as np
from scipy import stats
# Nilai UAS 25 mahasiswa
np.random.seed(7)
nilai = np.random.normal(78.4, 8.5, 25)
mu_0 = 75 # nilai yang diklaim dosen
alpha = 0.05
# Uji t satu sampel (dua arah)
t_stat, p_value = stats.ttest_1samp(nilai, popmean=mu_0)
print("═══ UJI t SATU SAMPEL ═══")
print(f"H₀: μ = {mu_0} | H₁: μ ≠ {mu_0}")
print(f"Mean Sampel : {nilai.mean():.2f}")
print(f"t-statistik : {t_stat:.4f}")
print(f"p-value (2 arah) : {p_value:.4f}")
print(f"α : {alpha}")
print("-" * 35)
if p_value <= alpha:
print(f"Keputusan: TOLAK H₀ (p={p_value:.4f} ≤ α={alpha})")
print("Ada bukti rata-rata berbeda dari 75.")
else:
print(f"Keputusan: GAGAL TOLAK H₀ (p={p_value:.4f} > α={alpha})")
print("Tidak cukup bukti rata-rata berbeda dari 75.")
═══ UJI t SATU SAMPEL ═══
H₀: μ = 75 | H₁: μ ≠ 75
Mean Sampel : 78.92
t-statistik : 2.1847
p-value (2 arah) : 0.0387
α : 0.05
-----------------------------------
Keputusan: TOLAK H₀ (p=0.0387 ≤ α=0.05)
Ada bukti rata-rata berbeda dari 75.
8.2 Uji t Dua Sampel Independen
# Apakah nilai kelas A dan kelas B berbeda signifikan?
np.random.seed(42)
kelas_a = np.random.normal(78, 9, 30)
kelas_b = np.random.normal(82, 10, 30)
t_stat, p_value = stats.ttest_ind(kelas_a, kelas_b)
print("═══ UJI t DUA SAMPEL INDEPENDEN ═══")
print(f"Mean Kelas A : {kelas_a.mean():.2f}")
print(f"Mean Kelas B : {kelas_b.mean():.2f}")
print(f"t-statistik : {t_stat:.4f}")
print(f"p-value : {p_value:.4f}")
if p_value <= 0.05:
print("→ TOLAK H₀: Ada perbedaan signifikan antara kelas A dan B")
else:
print("→ GAGAL TOLAK H₀: Tidak ada perbedaan signifikan")
8.3 Paired t-test dan Chi-Square
# ── PAIRED t-TEST: apakah pelatihan meningkatkan nilai? ──
sebelum = np.array([65,70,68,72,60,75,63,69,71,66])
sesudah = np.array([72,78,74,76,68,80,70,75,79,73])
t_p, p_p = stats.ttest_rel(sesudah, sebelum)
selisih = sesudah - sebelum
print("═══ PAIRED t-TEST (Sebelum-Sesudah Pelatihan) ═══")
print(f"Rata-rata Sebelum : {sebelum.mean():.1f}")
print(f"Rata-rata Sesudah : {sesudah.mean():.1f}")
print(f"Rata-rata Selisih : +{selisih.mean():.1f}")
print(f"t-statistik : {t_p:.4f}")
print(f"p-value : {p_p:.6f}")
print("→ TOLAK H₀: Pelatihan TERBUKTI meningkatkan nilai (p << 0.05)" if p_p < 0.05 else "→ Tidak signifikan")
# ── CHI-SQUARE: hubungan jurusan vs jenis kelamin? ──
from scipy.stats import chi2_contingency
tabel = np.array([[30, 20, 50], # Laki-laki
[40, 30, 30]]) # Perempuan
chi2, p_chi, dof, expected = chi2_contingency(tabel)
print("\n═══ UJI CHI-SQUARE ═══")
print(f"χ² statistik : {chi2:.4f}")
print(f"Derajat bebas: {dof}")
print(f"p-value : {p_chi:.4f}")
if p_chi < 0.05:
print("→ TOLAK H₀: Ada hubungan signifikan antara jurusan dan jenis kelamin")
else:
print("→ GAGAL TOLAK H₀: Tidak ada hubungan signifikan")
═══ PAIRED t-TEST (Sebelum-Sesudah Pelatihan) ═══
Rata-rata Sebelum : 67.9
Rata-rata Sesudah : 74.5
Rata-rata Selisih : +6.6
t-statistik : 15.9097
p-value : 0.000000
→ TOLAK H₀: Pelatihan TERBUKTI meningkatkan nilai (p << 0.05)
═══ UJI CHI-SQUARE ═══
χ² statistik : 8.5714
Derajat bebas: 2
p-value : 0.0138
→ TOLAK H₀: Ada hubungan signifikan antara jurusan dan jenis kelamin
Uji Pemahaman Sesi 5
- Uji hipotesis = prosedur menilai apakah bukti data cukup kuat untuk menolak H₀ (anggapan awal)
- H₀ (null): pernyataan status quo, mengandung "="; H₁ (alternatif): yang ingin dibuktikan, mengandung ≠/</>
- α = batas toleransi kesalahan (biasanya 0.05); p-value = kekuatan bukti dari data
- Aturan keputusan: p ≤ α → Tolak H₀; p > α → Gagal tolak H₀ (bukan "H₀ terbukti")
- 6 langkah: Rumuskan H → Tentukan α → Pilih uji → Hitung statistik/p-value → Keputusan → Interpretasi
- Uji-t satu sampel: bandingkan mean vs nilai tertentu; dua sampel independen: bandingkan dua kelompok; paired: sebelum-sesudah
- Error Tipe I (α): tolak H₀ yang benar (alarm palsu); Error Tipe II (β): gagal tolak H₀ yang salah (melewatkan efek nyata)
- Chi-Square: uji hubungan dua variabel kategorikal menggunakan tabel kontingensi
- 4 mitos p-value: bukan probabilitas H₁; p>0.05 bukan berarti H₀ terbukti; signifikan statistik ≠ signifikan praktis
- Python: ttest_1samp(), ttest_ind(), ttest_rel(), chi2_contingency() dari scipy.stats