ikuti Saluran WhatsApp Rumahdisolo.com. Klik WhatsApp

Ranking Data Dengan RANK dan Percentile

Pelajari cara ranking data dengan RANK & Percentile! Buat analisis lebih akurat dan rapi. Ikuti panduannya sekarang untuk hasil maksimal! 🚀

Kalau kamu sering main data — nilai ulangan, leaderboard game, atau penjualan — satu skill yang bakal sering kepake adalah ranking alias ngurutin dan kasih peringkat.

Di spreadsheet ada fungsi khusus buat itu: `RANK`, `RANK.EQ`, `RANK.AVG`, `PERCENTILE`, `PERCENTRANK`, dan beberapa saudara lain.

Artikel ini bakal jelasin semuanya pelan-pelan dan sangat praktis: mulai dari sintaks, kasus nyata (tabel siap dipakai), cara atasi tie (nilai sama), ranking per kelompok, pakai percentile buat ambang (contoh: masuk beasiswa top 10%), sampai trik visual biar gampang dibaca.

G Langsung aja biar gampang dicopy-paste dan dipraktekkan.


Daftar isi (cepet)

  • Kenapa ranking penting?
  • Fungsi RANK: apa dan kapan dipakai
  • RANK.EQ vs RANK.AVG — bedanya apa?
  • Sintaks lengkap + contoh sederhana
  • Ascending vs Descending: kebalikan arti rank
  • Contoh nyata: ranking nilai siswa (tabel & rumus)
  • Menangani tie (nilai sama): beberapa pendekatan
  • Dense rank (peringkat tanpa loncatan) — cara buat di spreadsheet
  • Ranking dalam grup (per kelas / per region) — pakai COUNTIFS / SUMPRODUCT
  • Percentile: pengertian & fungsi terkait (PERCENTILE, PERCENTRANK)
  • Gunakan percentile untuk cutoff (top 10%, kuartil, dsb.)
  • RANK + Percentile untuk grading otomatis (A/B/C)
  • Ranking dengan multiple tie-breaker (nilai + waktu/absensi)
  • Visualisasi ranking: conditional formatting, bar sparkline, chart
  • Advanced: normalisasi ranking, z-score singkat
  • Performance & best practice
  • Latihan & jawaban
  • Troubleshooting umum
  • Penutup motivasi

Kenapa ranking penting?

Gampangnya: ranking membantu kita tahu siapa atau apa yang paling (atau urutan) berdasarkan metrik tertentu. Contoh nyata:

  • Guru ingin tahu siapa juara kelas.
  • Admin e-commerce ingin tahu produk terlaris.
  • Tim game mau leaderboard pemain.
  • Manajer HR mau urutkan karyawan berdasar skor performance review.

Ranking juga dipakai untuk keputusan: misalnya top 10% dapat beasiswa. Nah, itu bukan cuma urut — kita butuh percentile untuk batasan. Di spreadsheet, kalau paham fungsi-fungsi ranking dan percentile, kamu bisa bikin laporan otomatis tanpa ribet.


Fungsi RANK: apa dan kapan dipakai

Fungsi `RANK` (atau `RANK.EQ`/`RANK.AVG`) ngasih peringkat (rank) suatu nilai di antara sekumpulan nilai. Contoh: kamu punya daftar skor dan mau tahu posisi skor 88 di daftar itu.

Versi Excel/Sheets:

  • `RANK(value, ref, [order])` — klasik (beberapa Excel lama).
  • 2.`RANK.EQ(value, ref, [order])` — kembalian sama seperti RANK: nilai sama → sama peringkat (equal).
  • 3.`RANK.AVG(value, ref, [order])` — kalau ada tie (nilai sama), beri rata-rata peringkat untuk nilai yang sama. Contoh: dua orang share peringkat 2 → RANK.AVG beri 2.5 pada keduanya.

Parameter `order`:

  • `0` atau diabaikan → descending (nilai terbesar dapat rank 1).
  • `1` → ascending (nilai terkecil dapat rank 1).

RANK.EQ vs RANK.AVG — bedanya apa?

  • `RANK.EQ`: memberikan peringkat sama untuk nilai yang identik, dan mendorong gap di peringkat selanjutnya. Contoh: jika dua orang berbagi rank 2 (nilai sama), peringkat berikutnya adalah 4.
  • `RANK.AVG`: memberikan rata-rata peringkat untuk nilai yang identik. Contoh: dua orang yang share spot 2 dan 3 masing-masing akan mendapat 2.5.

Contoh kecil:

Nilai: [95, 90, 90, 85]

  • `RANK.EQ(90)` → kedua 90 mendapatkan rank 2. Nilai 85 jadi rank 4.
  • `RANK.AVG(90)` → kedua 90 mendapatkan rank (2+3)/2 = 2.5. Nilai 85 jadi rank 4.

Pilih `RANK.EQ` kalau kamu pingin peringkat tradisional (kompetisi: kalau dua orang seri, peringkat berikut lompat). Pilih `RANK.AVG` kalau mau "rata-rata" peringkat saat tie.


Sintaks lengkap + contoh sederhana

Sintaks (Excel modern / Google Sheets):

=RANK.EQ(lookup_value, ref, [order])
=RANK.AVG(lookup_value, ref, [order])

`lookup_value`: nilai yang mau kamu peringkatkan (mis. sel B2).

`ref`: range berisi semua nilai yang jadi basis ranking (mis. B2:B20).

`order`: 0 atau kosong (descending), 1 (ascending).

Contoh:

Tabel sederhana (B2:B6):

B
92
78
85
88
78

Jika B2=92:

`=RANK.EQ(B2,$B$2:$B$6,0)` → hasil 1

Jika B3=78:

`=RANK.EQ(B3,$B$2:$B$6,0)` → hasil 4 (karena ada dua 78 → both rank 4, next rank = 6)


Ascending vs Descending: kebalikan arti rank

  • Descending (default): rank 1 = nilai terbesar. Cocok untuk skor/penjualan.
  • Ascending: rank 1 = nilai terkecil. Cocok untuk waktu tempuh lomba (semakin kecil semakin baik), atau jumlah kesalahan (semakin kecil semakin baik).

Contoh waktu lomba (detik): [60, 55, 72, 55]

`=RANK.EQ(cell, range, 1)` → 55 akan rank 1 (terbaik).


Contoh nyata lengkap: ranking nilai siswa (tabel & rumus)

Salin tabel berikut ke spreadsheet contohmu.

Tabel: Nilai Siswa (A1:C11)

No Nama Nilai
1Andi92
2Budi78
3Citra85
4Deni88
5Evi78
6Fajar92
7Gita70
8Hani95
9Iwan88
10Joko60

Letakkan rumus rank di kolom D (`D2:D11`):

D2: =RANK.EQ(C2,$C$2:$C$11,0)

Lalu drag ke bawah.

Hasil (harus sesuai):

  • Hani 95 → rank 1
  • Andi 92 & Fajar 92 → both rank 2 (RANK.EQ)
  • Deni 88 & Iwan 88 → both rank 4
  • Citra 85 → rank 6
  • Budi 78 & Evi 78 → both rank 7
  • Gita 70 → rank 9
  • Joko 60 → rank 10

Penjelasan: RANK.EQ beri rank sama untuk nilai identik; karena ada ties, peringkat berikutnya lompat.

Kalau mau average ranks (tidak lompat), pakai `RANK.AVG`:

D2: =RANK.AVG(C2,$C$2:$C$11,0)

Then 92 akan mendapat (2+3)/2 = 2.5.


Menangani tie (nilai sama): beberapa pendekatan

Tie (nilai sama) sering bikin bingung. Pilihan penanganan:

  1. Terima tie (RANK.EQ) — dua siswa sama peringkat. Sering dipakai di lomba.
  2. Averaging tie (RANK.AVG) — beri angka rata2 peringkat. Kadang dipakai di statistik.
  3. Tie-breaker kolom sekunder — misal nilai mata pelajaran lain, atau waktu submit. Kamu bisa pakai kombinasi fungsi untuk membedakan ties.
  4. Dense rank — peringkat tanpa loncatan (1,2,2,3), useful kalau kamu ingin hasil berurutan tanpa gap. Membuatnya memerlukan formula tambahan.

Cara buat tie-breaker (nilai + waktu)

Misalnya ada kolom `WaktuSubmit` (lebih cepat lebih baik). Kamu ingin nilai lebih tinggi → tapi bila nilai sama, yang waktu lebih cepat dapat peringkat lebih baik.

Trik: buat helper column `Key` yang menggabungkan nilai dan waktu jadi satu angka yang bisa di-sort. Contoh:

Jika nilai integer 0–100 dan waktu dalam detik, buat `Composite = Nilai*1000000 - Waktu` (besar = lebih baik). Atau di Excel/Sheets:

E2: =C2*1000000 - F2
D2: =RANK.EQ(E2,$E$2:$E$11,0)

Di sini composite besar untuk nilai besar dan waktu kecil. Atau gunakan `SORTBY`/`SORT` kalau pakai Excel 365 / Google Sheets.


Dense rank (peringkat tanpa loncatan) — cara buat

Dense rank berarti jika dua orang share posisi 2, posisi berikutnya adalah 3 (bukan 4). Cara buat dengan `RANK.EQ` + formula sederhana:

Metode SUMPRODUCT:

Jika kamu punya nilai di `C2:C11` dan ingin dense rank di `D2`:

D2: =1 + SUMPRODUCT(--($C$2:$C$11 > C2))

Ini menghitung berapa nilai lebih besar dari nilai di C2; tambah 1 → dense rank (descending). Untuk ascending:

=1 + SUMPRODUCT(--($C$2:$C$11 < C2))

Kelebihan: ties akan menghasilkan rank sama, dan next rank tidak loncat.

Contoh:

Nilai: [95,92,92,88]

DENSE RANK → [1,2,2,3]


Ranking dalam grup (per kelas / per region)

Sering kita perlu ranking per group. Misal per kelas: peringkat siswa hanya dibandingkan sesama kelas.

Gunakan `COUNTIFS` atau `SUMPRODUCT`.

Contoh: kamu punya `Kelas` di kolom B dan `Nilai` di kolom C. Untuk rank descending per kelas:

=1 + COUNTIFS($B$2:$B$100, B2, $C$2:$C$100, ">" & C2)

Penjelasan: untuk baris siswa, hitung jumlah siswa di kelas yang punya nilai lebih besar → tambah 1 → rank.

Jika ingin average ties:

=RANK.EQ(C2, FILTER($C$2:$C$100, $B$2:$B$100 = B2), 0)

Catatan: `FILTER` tersedia di Google Sheets dan Excel 365. Untuk Excel lama, gunakan array formulas atau SUMPRODUCT.

Dense rank per group:

=1 + SUMPRODUCT( ($B$2:$B$100 = B2) * ($C$2:$C$100 > C2) )

Percentile: pengertian & fungsi terkait

Percentile memberi posisi relatif nilai dalam persentase. Contoh: 90th percentile artinya 90% datanya <= nilai tersebut.

Fungsi penting:

  • `PERCENTILE.INC(array, k)` → percentile inklusif (k antara 0 dan 1).
  • `PERCENTILE.EXC(array, k)` → percentile eksklusif (k antara 0 dan 1, biasanya untuk statistik tertentu).
  • `PERCENTRANK.INC(array, x, [significance])` → mengembalikan persentase posisi x dalam array (inklusif). Contoh: jika nilai x = 88 dan 88 berada di 70th percentile, hasil = 0.7.
  • `PERCENTRANK.EXC` → versi eksklusif.

Google Sheets: `PERCENTILE`, `PERCENTRANK` ada, sintaks mirip.

Contoh:

Nilai: [60,70,78,78,85,88,92,92,95]

`PERCENTILE.INC(range, 0.9)` → nilai di persentil 90%. Perhitungan: akan memberi angka di antara data; hasil mungkin 95 atau interpolasi tergantung fungsi.


Gunakan percentile untuk cutoff (top 10%, kuartil, dsb.)

Buat ambang otomatis: misal top 10% dapat beasiswa.

Langkah:

  1. Hitung threshold = `PERCENTILE.INC(range, 0.9)` → nilai yang di atasnya 10% siswa.
  2. Tandai siswa yang nilainya >= threshold.

Contoh formula:

Threshold (sel H1): =PERCENTILE.INC($C$2:$C$101, 0.9)
InEligibility (J2): =IF(C2 >= $H$1, "Beasiswa", "")

Untuk kuartil (Q1/Q2/Q3):

Q1 = PERCENTILE.INC(range, 0.25)
Q2(median) = PERCENTILE.INC(range, 0.5)
Q3 = PERCENTILE.INC(range, 0.75)

Catatan: ada juga fungsi `QUARTILE.INC` dan `QUARTILE.EXC`.


RANK + Percentile untuk grading otomatis (A/B/C)

Contoh: kamu ingin grade A untuk top 10%, B untuk top 30%, C sisanya.

Langkah:

  1. Hitung percentile per siswa: `PERCENTRANK.INC($C$2:$C$11, C2)` → misal 0.92 (92%).
  2. Buat aturan:
    • 1. > = 0.90 → A
    • 2.> = 0.60 → B
    • 3.else → C

Formula contoh di D2:

=PERCENTRANK.INC($C$2:$C$11, C2)
E2: =IF(D2 >= 0.9, "A", IF(D2 >= 0.6, "B", "C"))

Atau gabung:

=IF(PERCENTRANK.INC($C$2:$C$11, C2) >= 0.9, "A", IF(PERCENTRANK.INC($C$2:$C$11, C2) >= 0.6, "B", "C"))

Lebih efisien simpan PERCENTRANK di helper kolom lalu buat grade berdasarkan helper itu.


Ranking dengan multiple tie-breaker (nilai + subkriteria)

Kadang kita butuh lebih dari satu tie-breaker: mis. nilai utama, lalu nilai mata pelajaran lain, lalu waktu submission.

Cara:

  1. Buat helper composite key yang menggabungkan semua kriteria dengan bobot: `Composite = score1*big + score2*med - time`
  2. Atau gunakan `SORTBY`/`SORT` dan `RANK` pada kolom sorted result (Excel 365/Sheets).

Contoh composite:

E2 = C2*10000 + D2*100 - F2
D2 (rank) = RANK.EQ(E2, $E$2:$E$100, 0)

Composite pastikan bobot (`10000`, `100`) besar cukup agar prioritas diinginkan terjaga.


Visualisasi ranking: conditional formatting & sparkline & charts

Membuat visual memudahkan orang lain pahamin ranking.

Tips:

  • Gunakan conditional formatting → kolor bar berdasarkan nilai / rank.
  • Gunakan `SPARKLINE` di Google Sheets/Excel 365 untuk bar kecil per baris: `=SPARKLINE(G2, {"charttype","bar"; "max",MAX(G:G)})`.
  • Buat leaderboard: `SORT` table berdasarkan nilai descending, ambil top N.
  • Gunakan column/bar chart untuk top 10 produk.

Contoh conditional formatting di Excel:

  • Select range nilai/total.
  • Home → Conditional Formatting → Data Bars → pilih style. Atau gunakan rule berbasis formula untuk highlight top 3:
=RANK.EQ($C2,$C$2:$C$11)<=3

Advanced: normalisasi ranking, z-score singkat

Untuk komparasi antar dataset yang beda skala, kadang perlu normalisasi. Dua pendekatan:

  1. Percentile: konversi nilai ke 0–1 memakai `PERCENTRANK`. Mudah dan robust.
  2. Z-score: standar normalisasi `(x - AVERAGE)/STDEV`. Berguna untuk analisis statistik.

Z-score formula:

Z = (C2 - AVERAGE(range)) / STDEV.P(range)

Z-score tinggi = nilai jauh di atas rata-rata.


Performance & best practice

  • Batasi range: jangan pakai `A:A` kalau dataset besar; pakai `A2:A1000`.
  • 2.Helper columns: kalau memakai composite atau kalkulasi berat (SUMPRODUCT), hitung sekali di helper column, jangan diulang di tiap baris.
  • 3.Avoid volatile functions: `INDIRECT`, `OFFSET` bikin workbook sering recalculated.
  • 4.Excel Table: pakai Table agar range dinamis dan rumus lebih readable.
  • 5.SORT / FILTER: Excel 365 & Sheets mendukung dynamic arrays — sangat berguna untuk leaderboard otomatis (`=SORT(range, col, -1)`).

Latihan & jawaban (praktek langsung)

Salin tabel siswa di bagian sebelumnya ke sheet dan kerjakan ini:

Soal 1: Buat kolom Rank (descending) pakai RANK.EQ.

Jawaban:

=RANK.EQ(C2, $C$2:$C$11, 0)

Soal 2: Buat Dense Rank (no gaps).

Jawaban:

=1 + SUMPRODUCT(--($C$2:$C$11 > C2))

Soal 3: Ranking per kelas (kolom Kelas ada).

Jawaban:

=1 + COUNTIFS($B$2:$B$100, B2, $C$2:$C$100, ">" & C2)

Soal 4: Tandai top 10% berdasarkan nilai.

Jawaban:

Threshold: =PERCENTILE.INC($C$2:$C$11, 0.9)
Flag: =IF(C2 >= Threshold, "Top 10%", "")

Soal 5: Buat grade A jika percentile >= 0.9, B jika >=0.6, else C.

Jawaban:

=IF(PERCENTRANK.INC($C$2:$C$11,C2) >= 0.9,"A", IF(PERCENTRANK.INC($C$2:$C$11,C2) >= 0.6,"B","C"))

Latihan-latihan ini bantu kamu pahami perbedaan metode dan kapan pakai apa.


Troubleshooting umum

  • Rank salah karena range tidak fix → gunakan `$` untuk alamat absolut: `$C$2:$C$11`.
  • #N/A pada PERCENTRANK → pastikan nilai ada di range. PERCENTRANK dapat interpolasi tapi cek argumen.
  • RANK memberikan angka duplicate atau loncatan → itu normal kalau pakai RANK.EQ; gunakan RANK.AVG atau dense formula jika mau beda.
  • Performance lambat → cek rumus SUMPRODUCT atau array di ribuan baris; gunakan helper columns.
  • Tanggal dijadikan angka → remember: Excel menyimpan tanggal sebagai angka; gunakan `order`=1 untuk ascending rank pada waktu/lamanya.

Ringkasan & langkah praktis cepat

  • Gunakan `RANK.EQ` untuk peringkat tradisional; `RANK.AVG` kalau mau rata-rata peringkat; `SUMPRODUCT/COUNTIFS` buat dense rank atau ranking per kelompok.
  • Untuk cutoff (top X%), pakai `PERCENTILE.INC` dan bandingkan nilai terhadap threshold.
  • Untuk peringkat per grup, `COUNTIFS` adalah sahabatmu: `1 + COUNTIFS(group_range, group, value_range, ">" & value)`.
  • Visualisasi: pakai Conditional Formatting dan SORT untuk leaderboard.
  • Simpan transformasi berat di helper columns dan gunakan Excel Table untuk maintainability.

Capek kan?

Ranking itu simpel tapi powerful. Sekali kamu ngerti pola-pola di artikel ini — `RANK`, `RANK.AVG`, `COUNTIFS`, `SUMPRODUCT`, `PERCENTILE` — kamu bisa bikin laporan otomatis: juara kelas, leaderboard game, produk top seller, atau sistem beasiswa berbasis percentile.

Jangan lupa praktik: salin tabel contoh, coba satu-satu rumus, dan eksperimen dengan data nyata (nilai kelasmu, data jualan, atau daftar film favorit).

Semakin sering ngulik, semakin cepat kamu jadi jagoan spreadsheet.

Selamat ngoprek!

Siswi SMK Muhammadiyah 1 sukoharjo yang cerdas, Bersemangat, dan Berintegritas. Profil Lengkap saya