{count, plural, one {Kursus} other {Kursus}}
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.

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
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.
