R'de çizgiler nasıl düzenlenir
Çoğu zaman, R’deki bir veri çerçevesinin satırlarını belirli bir sıraya göre düzenlemek isteyebilirsiniz. Neyse ki, dplyr kütüphanesindekirange () fonksiyonunu kullanarak bunu yapmak kolaydır.
Bu eğitimde, aşağıdaki veri çerçevesini kullanarak bu işlevin pratik kullanımına ilişkin birkaç örnek açıklanmaktadır:
#create data frame df <- data.frame(player = c('A', 'B', 'C', 'D', 'E', 'F', 'G'), points = c(12, 14, 14, 15, 20, 18, 29), assists = c(3, 5, 7, 8, 14, NA, 9)) #view data frame df player points assists 1 to 12 3 2 B 14 5 3 C 14 7 4 D 15 8 5 E 20 14 6 F 18 NA 7 G 29 9
Örnek 1: Bir sütuna göre düzenleme
Aşağıdaki kod, “noktalar” sütunundaki değerlere göre veri çerçevesinin artan sırada nasıl düzenleneceğini gösterir:
library(dplyr) df %>% arrange(points) player points assists 1 to 12 3 2 B 14 5 3 C 14 7 4 D 15 8 5 F 18 NA 6 E 20 14 7 G 29 9
Azalan düzende sıralamak için desc() işlevini kullanabilirsiniz:
df %>% arrange( desc (dots))
player points assists
1 G 29 9
2 E 20 14
3 F 18 NA
4 D 15 8
5 B 14 5
6 C 14 5
7 to 12 3
Artan veya azalan düzende sıralasanız da yapmasanız da NA’ların sonuna kadar sıralanacağını unutmayın:
df %>% arrange(assists)
player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 G 29 9
6 E 20 14
7 F 18 NA
df %>% arrange( desc (assists))
player points assists
1 E 20 14
2 G 29 9
3 D 15 8
4 C 14 7
5 B 14 5
6 to 12 3
7 F 18 NA
Örnek 2: Birden çok sütuna göre düzenleme
Satırları birden fazla sütuna göre düzenlemek için argüman olarak daha fazla sütun adı sağlayabiliriz:
#sort by points, then assists
df %>% arrange(points, assists)
player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 F 18 NA
6 E 20 14
7 G 29 9
Ayrıca satırları artan ve azalan bir sütuna göre de düzenleyebiliriz:
#sort by points ascending, then assists descending df %>% arrange(points, desc (assists)) player points assists 1 to 12 3 2 C 14 7 3 B 14 5 4 D 15 8 5 F 18 NA 6 E 20 14 7 G 29 9
Örnek 3: Satırları özel bir sıraya göre düzenleme
Bazen satırları özel bir sıraya göre sıralamak da isteyebilirsiniz. Bunu belirli düzeylere sahip bir faktör kullanarak kolayca yapabilirsiniz:
#sort by player with custom order df %>% arrange( factor (player, levels = c('D', 'C', 'A', 'B', 'E', 'F', 'G'))) player points assists 1 D 15 8 2 C 14 7 3 to 12 3 4 B 14 5 5 E 20 14 6 F 18 NA 7 G 29 9
Arrange() işlevine ilişkin tüm belgeleri burada bulabilirsiniz.