A: panduan lengkap tentang tie.method dalam fungsi pemeringkatan
Anda dapat menggunakan fungsi Rank() di basis R untuk mengembalikan peringkat nilai dalam vektor.
Fungsi ini menggunakan sintaks dasar berikut:
peringkat(x, na.last=TRUE,ties.method=”rata-rata”)
Emas:
- x : Vektor yang berisi nilai-nilai yang akan diklasifikasikan
- na.last : Jika TRUE, nilai yang hilang ditempatkan terakhir. Jika FALSE, nilai yang hilang didahulukan.
- tie.method : Cara menangani ikatan (defaultnya adalah “rata-rata”)
Argumen Ties.method pada fungsi Rank() menentukan bagaimana ikatan harus ditangani.
Argumen ini menerima opsi berikut:
- rata-rata : (Default) Memberikan peringkat rata-rata pada setiap item yang ditautkan (item dengan peringkat ke-3 dan ke-4 akan menerima peringkat 3,5)
- first : Menetapkan elemen tertaut pertama ke peringkat terendah (elemen yang berada di peringkat ke-3 dan ke-4 masing-masing akan menerima peringkat 3 dan 4)
- last : Menetapkan elemen tertaut terakhir ke peringkat terendah (elemen yang berada di peringkat ke-3 dan ke-4 akan menerima peringkat ke-4 dan ke-3 masing-masing)
- min : Menetapkan setiap item yang ditautkan ke peringkat terendah (item peringkat 3 dan 4 keduanya akan menerima peringkat 3)
- max : Menetapkan setiap item yang ditautkan dengan peringkat tertinggi (item dengan peringkat ke-3 dan ke-4 akan menerima peringkat 4)
- random : menetapkan setiap elemen terikat peringkat acak (salah satu elemen terikat untuk posisi ke-3 dan ke-4 dapat menerima peringkat mana pun)
Contoh berikut menunjukkan cara menggunakan setiap opsi dalam praktik dengan bingkai data berikut di R:
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'), dots=c(5, 8, 10, 10, 17)) #view data frame df player points 1 to 5 2 B 8 3 C 10 4 D 10 5 E 17
Contoh 1: Gunakan Rank() dengan Ties.method=”average”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”average” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = “ average ”) #view updated data frame df player points points_rank 1 to 5 1.0 2 B 8 2.0 3 C 10 3.5 4 D 10 3.5 5 E 17 5.0
Karena pemain C dan D memiliki jumlah poin yang sama dan berada di posisi 3 dan 4, keduanya menerima rata-rata peringkat: 3,5 .
Contoh 2: Gunakan Rank() dengan Ties.method=”first”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”first” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " first ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 3 4 D 10 4 5 E 17 5
Karena pemain C dan D memiliki jumlah poin yang sama dan menempati posisi 3 dan 4, pemain pertama di antara keduanya (pemain “C”) mendapat peringkat terendah.
Contoh 3: Gunakan Rank() dengan Ties.method=”last”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”last” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " last ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 3 5 E 17 5
Karena pemain C dan D memiliki jumlah poin yang sama dan menempati posisi 3 dan 4, pemain terakhir di antara keduanya (pemain “D”) mendapat peringkat terendah.
Contoh 4: Gunakan Rank() dengan Ties.method=”min”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”min” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " min ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 3 4 D 10 3 5 E 17 5
Karena pemain C dan D memiliki jumlah poin yang sama dan berada di posisi 3 dan 4, maka kedua pemain tersebut mendapat peringkat minimal: 3 .
Contoh 5: Gunakan Rank() dengan Ties.method=”max”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”max” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " max ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 4 5 E 17 5
Karena pemain C dan D memiliki jumlah poin yang sama dan berada di posisi 3 dan 4, maka kedua pemain tersebut mendapat peringkat maksimal: 4 .
Contoh 6: Gunakan Rank() dengan Ties.method=”random”
Kode berikut menunjukkan cara membuat kolom baru yang menggunakan Rank() dengan Ties.method=”random” untuk menetapkan peringkat setiap pemain berdasarkan nilai kolom poin :
#create new column that ranks players based on their points value df$points_rank = rank(df$points, ties. method = " random ") #view updated data frame df player points points_rank 1 to 5 1 2 B 8 2 3 C 10 4 4 D 10 3 5 E 17 5
Karena pemain C dan D memiliki jumlah poin yang sama dan berada di posisi 3 dan 4, maka setiap pemain secara acak diberi peringkat 3 atau 4.
Perhatikan bahwa saat Anda menggunakan “acak” untuk tie.method , peringkat yang ditetapkan untuk setiap nilai dapat berubah setiap kali Anda menjalankan kode.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Cara menggunakan sort(), order() dan Rank() di R
Cara menghitung peringkat persentil di R
Cara mengurutkan berdasarkan grup menggunakan dplyr