Lewati ke konten utama

Pandas Sort Values: Panduan Lengkap

Gunakan sort_values() untuk mengurutkan baris berdasarkan nilai kolom. Terapkan sort_index() untuk menata ulang baris berdasarkan indeks DataFrame. Gabungkan keduanya untuk mengeksplorasi data dari berbagai sudut.
Diperbarui 28 Sep 2026  · 4 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Menemukan bagian data yang menarik dalam sebuah DataFrame sering kali lebih mudah jika Anda mengubah urutan baris. Anda dapat mengurutkan baris dengan meneruskan nama kolom ke .sort_values().

Dalam kasus di mana baris memiliki nilai yang sama (ini umum jika Anda mengurutkan berdasarkan variabel kategori), Anda mungkin ingin memutus seri yang sama ini dengan mengurutkan berdasarkan kolom lain. Anda dapat mengurutkan berdasarkan beberapa kolom dengan cara ini dengan meneruskan daftar nama kolom.

Contoh pengurutan kolom di Pandas

Mengurutkan Baris berdasarkan Nilai Kolom dengan sort_values()

Anda dapat mengubah urutan baris dengan mengurutkannya sehingga data paling menarik berada di bagian atas DataFrame.

Urutkan berdasarkan satu kolom

Misalnya, saat kita menerapkan sort_values() pada kolom weight_kg dari DataFrame dogs, kita mendapatkan anjing paling ringan di bagian atas, Stella si Chihuahua, dan anjing paling berat di bagian bawah, Bernie si Saint Bernard.

dogs.sort_values("weight_kg")
      name        breed  color  height_cm  weight_kg date_of_birth
5   Stella    Chihuahua    Tan         18          2    2015-04-20
3   Cooper    Schnauzer   Gray         49         17    2011-12-11
0    Bella     Labrador  Brown         56         24    2013-07-01
1  Charlie       Poodle  Black         43         24    2016-09-16
2     Lucy    Chow Chow  Brown         46         24    2014-08-25
4      Max     Labrador  Black         59         29    2017-01-20
6   Bernie  St. Bernard  White         77         74    2018-02-27

Mengatur argumen ascending ke False akan mengurutkan data sebaliknya, dari anjing terberat ke teringan.

dogs.sort_values("weight_kg", ascending=False)
      name        breed  color  height_cm  weight_kg date_of_birth
6   Bernie  St. Bernard  White         77         74    2018-02-27
4      Max     Labrador  Black         59         29    2017-01-20
0    Bella     Labrador  Brown         56         24    2013-07-01
1  Charlie       Poodle  Black         43         24    2016-09-16
2     Lucy    Chow Chow  Brown         46         24    2014-08-25
3   Cooper    Schnauzer   Gray         49         17    2011-12-11
5   Stella    Chihuahua    Tan         18          2    2015-04-20

Urutkan berdasarkan beberapa kolom

Kita dapat mengurutkan berdasarkan beberapa variabel dengan meneruskan daftar nama kolom ke sort_values. Di sini, kita mengurutkan terlebih dahulu berdasarkan berat, lalu tinggi. Kini, Charlie, Lucy, dan Bella diurutkan dari yang terpendek hingga tertinggi, meskipun berat mereka sama.

dogs.sort_values(["weight_kg", "height_cm"])
      name        breed  color  height_cm  weight_kg date_of_birth
5   Stella    Chihuahua    Tan         18          2    2015-04-20
3   Cooper    Schnauzer   Gray         49         17    2011-12-11
1  Charlie       Poodle  Black         43         24    2016-09-16
2     Lucy    Chow Chow  Brown         46         24    2014-08-25
0    Bella     Labrador  Brown         56         24    2013-07-01
4      Max     Labrador  Black         59         29    2017-01-20
6   Bernie  St. Bernard  White         77         74    2018-02-27

Untuk mengubah arah pengurutan nilai, berikan daftar ke argumen ascending untuk menentukan arah pengurutan bagi tiap variabel. Kini, Charlie, Lucy, dan Bella diurutkan dari yang tertinggi hingga terpendek.

dogs.sort_values(["weight_kg", "height_cm"], ascending=[True, False])
      name        breed  color  height_cm  weight_kg date_of_birth
5   Stella    Chihuahua    Tan         18          2    2015-04-20
3   Cooper    Schnauzer   Gray         49         17    2011-12-11
0    Bella     Labrador  Brown         56         24    2013-07-01
2     Lucy    Chow Chow  Brown         46         24    2014-08-25
1  Charlie       Poodle  Black         43         24    2016-09-16
4      Max     Labrador  Black         59         29    2017-01-20
6   Bernie  St. Bernard  White         77         74    2018-02-27

Mengurutkan berdasarkan Indeks Baris dengan sort_index()

Terkadang Anda mungkin ingin mengubah urutan baris berdasarkan label barisnya (yaitu indeks DataFrame) alih-alih berdasarkan kolom tertentu. Jika demikian, Anda dapat menggunakan metode sort_index() sebagai pengganti sort_values(). Ingat bahwa, secara bawaan, sort_index() akan mengurutkan baris Anda dalam urutan menaik berdasarkan indeksnya:

# Sort rows by their index (ascending)
dogs_sorted = dogs.sort_index()
print(dogs_sorted)

Jika Anda perlu mengurutkan baris dalam urutan menurun, cukup berikan ascending=False:

# Sort rows by their index (descending)
dogs_sorted_desc = dogs.sort_index(ascending=False)
print(dogs_sorted_desc)

Demikian pula, jika Anda memiliki indeks bertingkat (hierarkis), sort_index() juga dapat menanganinya dengan mengurutkan beberapa level. Anda cukup meneruskan sebuah daftar ke parameter level atau ascending (seperti sebelumnya kita harus meneruskan daftar untuk sort_values()):

# Sort rows by multiple levels of a multi-level index
dogs_sorted_multi = dogs.sort_index(level=[0, 1], ascending=[True, False])
print(dogs_sorted_multi)

Contoh Interaktif Pandas Sort Values

Pada contoh berikut, Anda akan mengurutkan homelessness berdasarkan jumlah individu tunawisma, dari yang terkecil ke terbesar, dan menyimpannya sebagai homelessness_ind. Terakhir, Anda akan mencetak head dari DataFrame yang sudah diurutkan.

# Sort homelessness by individuals
homelessness_ind = homelessness.sort_values("individuals")

# Print the top few rows
print(homelessness_ind.head())

Saat kita menjalankan kode di atas, akan dihasilkan keluaran berikut:

                region         state  individuals  family_members  state_pop
50            Mountain       Wyoming        434.0           205.0     577601
34  West North Central  North Dakota        467.0            75.0     758080
7       South Atlantic      Delaware        708.0           374.0     965479
39         New England  Rhode Island        747.0           354.0    1058287
45         New England       Vermont        780.0           511.0     624358

Coba sendiri.

Untuk mempelajari lebih lanjut tentang pengurutan dan penyusunan subset data, silakan lihat video dari kursus kami Data Manipulation with pandas.

Konten ini diambil dari kursus DataCamp Data Manipulation with pandas oleh Maggie Matsui dan Richie Cotton.

Pembelajaran Lanjutan

Kita telah mempelajari dalam artikel ini, antara lain, kapan harus menggunakan sort_index() vs. sort_values(): Gunakan sort_values() ketika Anda ingin mengubah urutan baris berdasarkan nilai kolom; gunakan sort_index() ketika Anda ingin mengubah urutan baris berdasarkan label baris (indeks DataFrame).

Kami memiliki banyak tutorial pandas bermanfaat lainnya agar Anda terus belajar, termasuk The ultimate Guide to Pandas for Beginners, sehingga Anda dapat terus berlatih. Kami juga memiliki panduan praktis lain untuk masalah umum, termasuk How to Import CSV Data into Pandas dan How to Join DataFrames in Pandas. Juga, ingat untuk mengikuti jalur keterampilan Python Programming kami untuk terus meningkatkan keterampilan Anda. 

Topik
Python

Ikuti kursus Python bersama DataCamp

{count, plural, one {Kursus} other {Kursus}}

Pengantar Python

{hours} jam
7.1M
Kuasai dasar-dasar analisis data dengan Python dalam 4 jam. Kursus online ini memperkenalkan antarmuka Python dan pustaka populer.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

{count, plural, one {blog} other {blogs}}

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

{count, plural, one {blog} other {blogs}}

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

{count, plural, one {blog} other {blogs}}

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

{count, plural, one {blog} other {blogs}}

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya