0Pricing
R Academy · Pelajaran

Mengurutkan Vektor dengan sort()

Urutkan vektor numerik dan character secara menaik atau menurun.

Mengurutkan Vektor dengan sort() adalah pelajaran R Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar R Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus R Academy mencakup 4 pelajaran total.

Apa yang Dilakukan sort()?

Fungsi sort() menyusun elemen suatu vektor dalam urutan menaik secara default. Fungsi ini bekerja pada vektor numeric, character, dan logical, lalu mengembalikan vektor baru yang telah diurutkan tanpa mengubah vektor asli.

scores <- c(42, 7, 95, 13, 67, 31)
sorted_scores <- sort(scores)
print(sorted_scores)

Mengurutkan dalam Urutan Menurun

Berikan decreasing = TRUE kepada sort() untuk membalik urutannya. Hal ini berguna untuk mengurutkan hasil dari nilai tertinggi ke terendah, misalnya skor papan peringkat atau angka penjualan.

prices <- c(19.99, 5.49, 89.00, 34.50, 12.75)
sort(prices, decreasing = TRUE)

Mengurutkan Vektor Character

Vektor character diurutkan secara leksikografis (berdasarkan abjad). R menggunakan lokal sistem untuk menentukan urutan, sehingga huruf besar mungkin diurutkan sebelum huruf kecil, bergantung pada pengaturan lokal.

fruits <- c('banana', 'Apple', 'cherry', 'apricot', 'Blueberry')
sort(fruits)

Perilaku Pengurutan yang Peka Huruf Besar-Kecil

Di sebagian besar lokal, huruf besar diurutkan sebelum huruf kecil. Untuk mengurutkan tanpa membedakan huruf besar-kecil, ubah semuanya ke bentuk yang sama terlebih dahulu menggunakan tolower() atau toupper() sebelum mengurutkan.

words <- c('Zebra', 'apple', 'Mango', 'banana')
# Case-sensitive (uppercase first)
sort(words)
# Case-insensitive approach
words[order(tolower(words))]

Menangani Nilai NA dengan na.last

Secara default, sort() menghapus nilai NA. Gunakan na.last = TRUE untuk menempatkan NA di akhir, atau na.last = FALSE untuk menempatkannya di awal. Ini mengatur posisi nilai yang hilang dalam hasil.

data <- c(5, NA, 2, NA, 8, 1)
# Default: NAs removed
sort(data)
# NAs at end
sort(data, na.last = TRUE)
# NAs at beginning
sort(data, na.last = FALSE)

Mengurutkan Vektor Logical

Dalam urutan menaik, vektor logical diurutkan dengan FALSE (0) sebelum TRUE (1). Hal ini berguna ketika Anda ingin mengelompokkan nilai TRUE/FALSE.

flags <- c(TRUE, FALSE, TRUE, FALSE, FALSE, TRUE)
sort(flags)
sort(flags, decreasing = TRUE)

sort() Mempertahankan Tipe Vektor

sort() selalu mengembalikan vektor dengan tipe yang sama seperti masukan. Pengurutan integer menghasilkan integer, double menghasilkan double, dan character menghasilkan character. Atribut kelas tetap dipertahankan.

int_vec <- c(5L, 2L, 8L, 1L, 4L)
result <- sort(int_vec)
print(result)
print(class(result))
print(typeof(result))

sort.int() untuk Pengurutan Integer

sort.int() adalah fungsi tingkat rendah yang khusus digunakan untuk mengurutkan vektor integer atau double. Fungsi ini menerima argumen yang sama seperti sort(), tetapi sedikit lebih cepat untuk vektor numeric berukuran besar karena melewati sebagian overhead pengiriman metode.

big_vec <- c(100L, 3L, 77L, 22L, 55L, 9L)
# sort.int works like sort for numeric/integer vectors
result <- sort.int(big_vec, decreasing = FALSE)
print(result)

Vektor Asli Tidak Berubah

Sifat penting sort(): fungsi ini tidak mengubah vektor asli. Fungsi ini mengembalikan vektor baru yang telah diurutkan. Anda harus menetapkan hasilnya jika ingin mempertahankan urutan tersebut.

temps <- c(22.5, 18.0, 30.1, 15.3, 27.8)
sorted_temps <- sort(temps)
cat('Original:', temps, '\n')
cat('Sorted:  ', sorted_temps, '\n')

Menggabungkan Pengurutan dan Pengindeksan

Terkadang Anda memerlukan nilai yang telah diurutkan sekaligus posisi aslinya. Gabungkan sort() dengan which(), atau gunakan order() (dibahas pada pelajaran berikutnya) untuk mengambil indeks asli bersama nilai yang telah diurutkan.

exam_scores <- c(78, 92, 65, 88, 71)
sorted <- sort(exam_scores)
cat('Sorted scores:', sorted, '\n')
# Find what rank each original score gets
ranks <- rank(exam_scores)
cat('Rank of each student:', ranks, '\n')

Pola Praktis sort()

Pola yang umum adalah mengurutkan nilai unik dari suatu vektor, atau mendapatkan N nilai terbesar menggunakan sort() yang digabungkan dengan head() atau tail().

sales <- c(120, 340, 95, 210, 340, 180, 95, 420)
# Unique values in order
sort(unique(sales))
# Top 3 largest
tail(sort(sales), 3)
# Bottom 3 smallest
head(sort(sales), 3)

Pemeriksaan Cepat

Argumen mana yang mengatur apakah nilai NA muncul di awal, di akhir, atau dihapus saat menggunakan sort()?

Hal-Hal Penting tentang sort()

Hal-hal penting tentang sort():

  • Gunakan sort(x) untuk urutan menaik dan sort(x, decreasing=TRUE) untuk urutan menurun
  • Vektor character diurutkan berdasarkan abjad; secara default, huruf besar-kecil berpengaruh
  • Atur posisi NA dengan na.last = TRUE/FALSE/NA
  • sort() tidak mengubah vektor asli — fungsi ini selalu mengembalikan vektor baru
  • Gunakan tail(sort(x), n) atau head(sort(x), n) untuk mendapatkan N nilai teratas atau terbawah
  • sort.int() adalah varian yang lebih cepat untuk vektor numeric/integer
x <- c(3, 1, NA, 5, 2, NA, 4)
cat('Ascending (no NAs):', sort(x), '\n')
cat('Descending (NAs last):', sort(x, decreasing = TRUE, na.last = TRUE), '\n')

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengurutkan Vektor dengan sort()” gratis?

Ya — teks lengkap “Mengurutkan Vektor dengan sort()” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus R Academy, upgrade ke CoddyKit PRO. Kursus R Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengurutkan Vektor dengan sort()”?

Urutkan vektor numerik dan character secara menaik atau menurun. Kamu berlatih R Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai R Academy?

Tidak diperlukan pengalaman sebelumnya. R Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Mengurutkan Vektor dengan sort()” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran R Academy ini?

Ya. Setiap pelajaran R Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengurutkan Vektor dengan sort()
  2. order() untuk Pengurutan Fleksibel
  3. Memberi Peringkat Nilai dengan rank()
  4. Mengurutkan Data Frame berdasarkan Kolom
← Kembali ke R Academy