Uji Statistik Non Parametrik: Mann-Whitney, Wilcoxon, dan Kruskal-Wallis
Blog/Tips & Trik/Uji Statistik Non Parametrik: Mann-Whitney, Wilcoxon, dan Kruskal-Wallis

Uji Statistik Non Parametrik: Mann-Whitney, Wilcoxon, dan Kruskal-Wallis

BimaBima
·12 Juli 2025·10 menit baca

Penulis

Bima

Bima

Founder & Data Professional

Bagikan

Terakhir diperbarui: 20 Juli 2026

TL;DR

Uji statistik non parametrik adalah uji yang nggak butuh asumsi sebaran normal karena bekerja dengan peringkat data, bukan nilai aslinya. Mann-Whitney U dipakai buat dua kelompok bebas, Wilcoxon signed-rank buat dua pengukuran pada objek yang sama, dan Kruskal-Wallis buat tiga kelompok bebas atau lebih. Hasilnya dilaporkan pakai median tiap kelompok, nilai statistik ujinya, dan p-value.

Uji statistik non parametrik adalah uji yang nggak butuh asumsi sebaran normal, karena dia kerja pakai peringkat data, bukan nilai aslinya.

Tiga yang paling sering kepakai: Mann-Whitney U buat dua kelompok bebas, Wilcoxon signed-rank buat dua pengukuran pada objek yang sama, dan Kruskal-Wallis buat tiga kelompok atau lebih.

Kabar baiknya, langkah di SPSS-nya nggak lebih ribet dari t-test. Yang beda cuma cara baca outputnya dan cara nulis hasilnya.

Di bawah ini cara kerjanya, langkah ketiga uji itu di SPSS dan Python, contoh angka dari data toko, dan format pelaporan yang bener.

Apa itu uji statistik non parametrik?

Uji non parametrik adalah uji yang nggak berasumsi apa-apa soal bentuk sebaran data di populasi. Dia ngubah nilai jadi peringkat dulu, terus ngebandingin peringkat antar kelompok. Karena nilai aslinya nggak dipakai langsung, sebaran yang miring atau adanya nilai ekstrem nggak ngerusak hasilnya.

Contoh gampangnya: kalau data belanja kamu berisi Rp 15.000, Rp 18.000, dan Rp 2.000.000, uji non parametrik cuma lihat itu sebagai peringkat 1, 2, dan 3. Nilai dua juta tadi nggak bisa narik hasil ke mana-mana.

Itu kekuatannya sekaligus batasnya. Kamu jadi kebal sama nilai ekstrem, tapi kehilangan informasi soal seberapa jauh jaraknya.

Kapan uji non parametrik lebih tepat dari t-test?

Tiga situasi yang paling sering muncul:

  1. Sebaran nggak normal dan sampel kecil. Di bawah 30 per kelompok, t-test mulai nggak bisa diandalkan kalau datanya miring.
  2. Skala datanya ordinal. Peringkat kepuasan, tingkat pendidikan, dan urutan preferensi masuk sini. Rata-rata dari data ordinal nggak punya arti yang jelas.
  3. Ada nilai ekstrem yang nyata. Pembelian borongan di data warung itu kejadian beneran, bukan salah input. Kamu nggak boleh hapus, tapi juga nggak mau dia narik rata-rata.

Kalau datamu normal dan sampelnya besar, uji parametrik tetap pilihan pertama. Syarat lengkapnya ada di uji statistik parametrik.

Gimana cara uji Mann-Whitney U di SPSS?

Mann-Whitney U ngebandingin dua kelompok yang isinya objek berbeda. Ini pengganti independent t-test.

Susunan datanya penting: satu kolom berisi nilai, satu kolom lagi berisi kode kelompok (misalnya 1 dan 2). Jangan dipisah jadi dua kolom nilai.

  1. Klik Analyze, pilih Nonparametric Tests, lalu Legacy Dialogs, lalu 2 Independent Samples.
  2. Masukin variabel nilai ke kotak Test Variable List.
  3. Masukin variabel kelompok ke kotak Grouping Variable.
  4. Klik Define Groups, isi 1 dan 2 sesuai kode kelompokmu, klik Continue.
  5. Pastikan Mann-Whitney U tercentang di bagian Test Type.
  6. Klik OK.

Output-nya dua tabel. Tabel Ranks nunjukin rata-rata peringkat tiap kelompok, dan tabel Test Statistics nunjukin nilai U plus Asymp. Sig. (2-tailed). Angka terakhir itu p-value-nya. Kalau di bawah 0,05, dua kelompok itu beda.

Versi Python-nya satu baris:

from scipy.stats import mannwhitneyu

u, p = mannwhitneyu(kelompok_a, kelompok_b, alternative="two-sided")
print("U:", u, "p-value:", round(p, 5))

Detail parameternya ada di dokumentasi scipy mannwhitneyu.

Gimana cara uji Wilcoxon signed-rank di SPSS?

Wilcoxon signed-rank dipakai kalau objeknya sama tapi diukur dua kali. Sebelum dan sesudah pelatihan, sebelum dan sesudah promo, pre-test dan post-test.

Susunan datanya kebalikan dari Mann-Whitney: dua kolom nilai, satu baris satu objek.

  1. Klik Analyze, Nonparametric Tests, Legacy Dialogs, 2 Related Samples.
  2. Klik kolom nilai pertama, terus kolom nilai kedua, masukin sebagai satu pasangan.
  3. Pastikan Wilcoxon tercentang.
  4. Klik OK.

Baca tabel Ranks dulu. Di situ ada Negative Ranks (nilai turun), Positive Ranks (nilai naik), dan Ties (nggak berubah). Tiga angka ini yang ngasih tau arah perubahannya.

Baru lihat tabel Test Statistics buat nilai Z dan p-value-nya. Uji ini cuma bilang ada perubahan atau nggak. Arahnya kamu baca sendiri dari tabel Ranks.

from scipy.stats import wilcoxon

stat, p = wilcoxon(sebelum, sesudah)
print("statistik:", stat, "p-value:", round(p, 5))

Gimana cara uji Kruskal-Wallis di SPSS?

Kruskal-Wallis dipakai buat tiga kelompok bebas atau lebih. Ini pengganti one-way ANOVA.

  1. Klik Analyze, Nonparametric Tests, Legacy Dialogs, K Independent Samples.
  2. Masukin variabel nilai ke Test Variable List, variabel kelompok ke Grouping Variable.
  3. Klik Define Range, isi nilai minimum dan maksimum kode kelompokmu, misalnya 1 dan 3.
  4. Pastikan Kruskal-Wallis H tercentang, klik OK.

Hasilnya berupa nilai H, derajat bebas, dan p-value. Kalau p di bawah 0,05, artinya minimal ada satu kelompok yang beda dari yang lain.

Di sini banyak orang berhenti, dan itu keliru. Kruskal-Wallis nggak ngasih tau kelompok mana yang beda.

Buat nemuin pasangannya, lanjut ke uji post hoc Dunn dengan koreksi Bonferroni. Jangan jalanin Mann-Whitney berkali-kali tanpa koreksi, karena tiap perbandingan tambahan naikin peluang nemu beda palsu.

from scipy.stats import kruskal

h, p = kruskal(kelompok_1, kelompok_2, kelompok_3)
print("H:", round(h, 3), "p-value:", round(p, 5))

Tabel padanan uji parametrik dan non parametrik

KondisiUji parametrikUji non parametrikStatistik yang dilaporkan
1 kelompok vs nilai acuanOne sample t-testWilcoxon signed-rankZ
2 kelompok bebasIndependent t-testMann-Whitney UU
2 pengukuran, objek samaPaired t-testWilcoxon signed-rankZ
3 kelompok bebas atau lebihOne-way ANOVAKruskal-WallisH
3 pengukuran berpasangan atau lebihRepeated measures ANOVAFriedmanChi-square
Hubungan 2 variabelKorelasi PearsonKorelasi Spearmanrho

Cara milih baris mana yang berlaku buat kasusmu ada di pohon keputusan jenis uji statistik.

Contoh kasus: nilai belanja dua cabang toko_berkah

Data toko_berkah punya Ngulik Data isinya 8.400 transaksi warung kelontong di Semarang. Pertanyaannya: apakah nilai belanja di cabang Tembalang beda dari cabang Banyumanik?

Sebaran nilai belanjanya miring ke kanan di dua cabang, karena ada pembelian borongan warung yang nilainya di atas Rp 500.000. Uji Kolmogorov-Smirnov ngasih p di bawah 0,001, jadi normalitasnya gagal.

Aku jalanin dua uji sekaligus buat ngebandingin hasilnya.

UjiUkuran pusat TembalangUkuran pusat BanyumanikSelisihp-value
t-test (rata-rata)Rp 24.700Rp 21.300Rp 3.400< 0,001
Mann-Whitney (median)Rp 18.900Rp 18.400Rp 5000,003

Dua-duanya bilang ada beda. Tapi besaran bedanya jauh banget: Rp 3.400 versus Rp 500.

Selisih rata-rata tadi hampir seluruhnya datang dari 3 persen transaksi teratas berupa pembelian borongan di Tembalang. Perilaku belanja pelanggan harian di dua cabang itu sebenernya hampir sama.

Kalau pemilik toko baca angka t-test doang, dia bakal nyimpulin pelanggan Tembalang lebih royal dan nyusun strategi harga dari situ. Median ngasih gambaran yang lebih jujur soal pelanggan kebanyakan.

Ini alasan praktis kenapa uji non parametrik kepakai, di luar urusan lolos syarat normalitas.

Gimana cara nulis hasilnya di skripsi?

Format pelaporannya beda dari uji parametrik. Empat hal yang harus ada:

  1. Median tiap kelompok, plus rentang antar kuartil. Jangan pakai rata-rata dan simpangan baku.
  2. Nama uji dan nilai statistiknya: U buat Mann-Whitney, Z buat Wilcoxon, H buat Kruskal-Wallis.
  3. Jumlah sampel tiap kelompok.
  4. Nilai p-value yang tepat, bukan cuma keterangan signifikan. Arti angkanya ada di glossary p-value.

Contoh kalimat yang bisa kamu pakai:

Uji Mann-Whitney U nunjukin nilai belanja di cabang Tembalang (median Rp 18.900, n = 4.312) berbeda dari cabang Banyumanik (median Rp 18.400, n = 4.088), dengan U = 8.427.116 dan p = 0,003.

Kesalahan umum waktu pakai uji non parametrik

Nulis rata-rata di hasil non parametrik. Ujinya bandingin peringkat, jadi ukuran pusat yang nyambung itu median. Nulis rata-rata bikin pembaca ngira kamu jalanin t-test.

Berhenti di Kruskal-Wallis yang signifikan. Kamu baru tau ada beda, belum tau di mana. Lanjutin ke uji Dunn.

Salah milih antara Mann-Whitney dan Wilcoxon. Kelompok bebas pakai Mann-Whitney, pengukuran berulang pakai Wilcoxon. Namanya mirip dan sering ketuker karena Mann-Whitney kadang disebut Wilcoxon rank-sum.

Langsung lompat ke non parametrik tanpa cek apa-apa. Kalau datamu normal dan sampelnya besar, uji parametrik lebih peka. Cek dulu, baru pindah.

Hapus nilai ekstrem terus tetap pakai non parametrik. Kalau outlier-nya kejadian nyata, biarin aja. Justru itu alasan kamu pilih uji ini.

FAQ

Kapan harus pakai uji non parametrik?

Tiga situasi. Pertama, sebaran datamu nggak normal dan sampelnya kecil, di bawah 30 per kelompok. Kedua, skala datamu ordinal seperti peringkat kepuasan atau tingkat pendidikan. Ketiga, ada nilai ekstrem yang narik rata-rata dan kamu nggak mau hapus datanya. Di ketiga kondisi itu, uji non parametrik ngasih kesimpulan yang lebih bisa dipercaya daripada t-test.

Apa bedanya Mann-Whitney dan Wilcoxon?

Mann-Whitney U dipakai buat dua kelompok yang isinya objek berbeda, misalnya pelanggan cabang A dibanding cabang B. Wilcoxon signed-rank dipakai buat dua pengukuran pada objek yang sama, misalnya omzet toko sebelum dan sesudah promo. Nama keduanya sering ketuker karena Mann-Whitney kadang disebut Wilcoxon rank-sum, yang beda dari Wilcoxon signed-rank.

Kruskal-Wallis signifikan, terus harus ngapain?

Hasil Kruskal-Wallis cuma bilang ada minimal satu kelompok yang beda, tanpa nyebut yang mana. Buat tau pasangan mana yang berbeda, lanjut ke uji post hoc Dunn dengan koreksi Bonferroni. Di SPSS versi baru, uji lanjutannya muncul otomatis kalau kamu klik dua kali hasil Kruskal-Wallis di Model Viewer. Jangan pakai Mann-Whitney berkali-kali tanpa koreksi.

Uji non parametrik hasilnya kurang kuat ya?

Kalau datanya beneran normal, uji non parametrik memang sedikit kurang peka dibanding t-test, sekitar 5 persen lebih rendah dalam kondisi ideal. Tapi kalau datanya miring atau ada nilai ekstrem, dia justru lebih andal. Jadi ini bukan soal kuat atau lemah, tapi soal cocok sama bentuk data yang kamu punya.

Gimana cara nulis hasil uji non parametrik di skripsi?

Laporkan median dan rentang antar kuartil tiap kelompok, bukan rata-rata dan simpangan baku. Sebutin nama ujinya, nilai statistiknya (U buat Mann-Whitney, H buat Kruskal-Wallis), jumlah sampel tiap kelompok, dan p-value-nya. Contohnya: median cabang A Rp 18.900 dan cabang B Rp 18.400, Mann-Whitney U = 1.204.500, p = 0,003.

Penutup

Yang perlu kamu simpan:

  • Mann-Whitney buat dua kelompok bebas, Wilcoxon buat pengukuran berulang, Kruskal-Wallis buat tiga kelompok ke atas
  • Laporkan median, bukan rata-rata
  • Kruskal-Wallis yang signifikan masih butuh uji lanjutan Dunn

Coba ambil data yang normalitasnya gagal, jalanin uji non parametrik yang sesuai, terus bandingin median sama rata-ratanya. Selisih dua angka itu sering jadi temuan yang paling menarik di analisismu.

Lanjut baca uji hipotesis buat analis buat dasar logika keputusannya, atau statistik deskriptif buat cara ngitung median dan kuartil yang bakal kamu laporin.

Coba Langsung

Mau praktek langsung? Mulai latihan SQL gratis

Latihan interaktif, langsung di browser.

Buka NgulikSQL →
Bagikan:
Bima
Ditulis oleh

Bima

Founder & Data Professional

Founder Ngulik Data. Passionate about making data analysis accessible for everyone.

Artikel terkait

Pandas groupby: Agregasi Data ala Pivot di Python (2026)
Tips & Trik
20 Juli 2026•9 menit baca

Pandas groupby: Agregasi Data ala Pivot di Python (2026)

groupby ngelompokin baris berdasarkan kolom, lalu ngitung ringkasan per grup kayak total atau rata-rata. Ini pivot-nya pandas.

BimaBima
Pandas to_excel: Ekspor DataFrame ke Excel (2026)
Tips & Trik
18 Juli 2026•8 menit baca

Pandas to_excel: Ekspor DataFrame ke Excel (2026)

to_excel nyimpen DataFrame pandas jadi file Excel .xlsx. Ini cara pakainya, dari satu sheet sampai banyak sheet, plus setelan yang bikin hasilnya rapi.

BimaBima
Pandas read_excel: Baca File Excel di Python
Tips & Trik
16 Juli 2026•8 menit baca

Pandas read_excel: Baca File Excel di Python

pandas read_excel baca file Excel jadi DataFrame, bisa pilih sheet tertentu dan lompatin baris judul yang berantakan. Ini cara pakai plus parameter penting dengan contoh data toko.

BimaBima
Kembali ke Blog
Ngulik Data logoNgulik Data

Platform edukasi data lengkap untuk professionals Indonesia. Belajar SQL, Data Analysis, dan lebih banyak lagi dengan praktek langsung dan feedback real-time.

© 2026 Ngulik Data. Semua hak dilindungi.

TAUTAN
BantuanHargaDatasetBlogAfiliasi
LEGAL
Syarat & KetentuanKebijakan Privasi
Ngulik Data
DatasetLeaderboardBlogStore