C: bir veri çerçevesindeki metni gruba göre daraltma
R’deki bir veri çerçevesindeki metni gruba göre daraltmak için aşağıdaki yöntemleri kullanabilirsiniz:
Yöntem 1: Base R’yi kullanarak metni gruba göre azaltın
aggregate(text_var ~ group_var, data=df, FUN=paste, collapse='')
Yöntem 2: dplyr kullanarak metni gruba göre azaltın
library (dplyr)
df %>%
group_by(group_var) %>%
summarize(text=paste(text_var, collapse=''))
Yöntem 3: data.table’ı kullanarak metni gruba göre azaltın
library (data.table) dt <- as. data . table (df) dt[, list(text_var=paste(text_var, collapse='')), by=group_var]
Bu eğitimde her yöntemin pratikte aşağıdaki veri çerçevesiyle nasıl kullanılacağı açıklanmaktadır:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
position=c('Guard', 'Guard', 'Forward',
'Guard', 'Forward', 'Center'))
#view data frame
df
team position
1A Guard
2 A Guard
3 A Forward
4 B Guard
5B Forward
6B Center
Örnek 1: Base R’yi kullanarak metni gruba göre azaltın
Aşağıdaki kod, R veritabanının Aggregate() işlevi kullanılarak ekip sütununa göre gruplandırılmış konum sütunu metninin nasıl azaltılacağını gösterir:
#collapse position values by team
aggregate(position ~ team, data=df, FUN=paste, collapse='')
team position
1A GuardGuardForward
2 B GuardForwardCenter
Konum sütunundaki metin değerlerinin her birinin, ekip sütunundaki değerlere göre gruplandırılarak tek bir değere daraltıldığını unutmayın.
Örnek 2: dplyr kullanarak metni gruba göre azaltın
Aşağıdaki kod, dplyr paketindeki summarise() işlevini kullanarak ekip sütununa göre gruplandırılmış konum sütunundaki metnin nasıl daraltılacağını gösterir:
library (dplyr) #collapse position values by team df %>% group_by(group_var) %>% summarize(text=paste(text_var, collapse='')) # A tibble: 2 x 2 team text 1A GuardGuardForward 2 B GuardForwardCenter
Konum sütunundaki metin değerlerinin her birinin, ekip sütunundaki değerlere göre gruplandırılarak tek bir değere daraltıldığını unutmayın.
Örnek 3: data.table’ı kullanarak metni gruba göre azaltın
Aşağıdaki kod, data.table paketindeki işlevler kullanılarak Ekip sütununa göre gruplandırılmış Konum sütunundaki metnin nasıl daraltılacağını gösterir:
library (data.table) #convert data frame to data table dt <- as. data . table (df) #collapse position values by team dt[, list(text_var=paste(text_var, collapse='')), by=group_var] team position 1: A GuardGuardForward 2: B GuardForwardCenter
Konum sütunundaki metin değerlerinin her biri, ekip sütunundaki değerlere göre gruplandırılarak tek bir değere daraltılmıştır.
Ek kaynaklar
Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
R’de belirli bir dize içeren sütunlar nasıl seçilir
R’de bir dizeden karakterler nasıl kaldırılır
R’de bir dizedeki karakter konumu nasıl bulunur?