İkinci bir değişkenin gruplanmasıyla benzersiz değerlerin sayısını saymak ve sonra sayımı varolan data.frame'e yeni bir sütun olarak eklemek istiyorum. Örneğin, mevcut veri çerçevesi aşağıdaki gibiyse:Grup tarafından R data.frame'e eş değerlerin sayısı nasıl eklenir
color type
1 black chair
2 black chair
3 black sofa
4 green sofa
5 green sofa
6 red sofa
7 red plate
8 blue sofa
9 blue plate
10 blue chair
Her color
için eklemek istediğiniz veri mevcut benzersiz types
sayma:
color type unique_types
1 black chair 2
2 black chair 2
3 black sofa 2
4 green sofa 1
5 green sofa 1
6 red sofa 2
7 red plate 2
8 blue sofa 3
9 blue plate 3
10 blue chair 3
Ben umuyordum ave
kullanın, ancak çok satır gerektirmeyen basit bir yöntem bulmak için görünmüyor. > 100.000 satır var, bu yüzden verimliliğin ne kadar önemli olduğundan emin değilim.
Bu konuya biraz benziyor:
within(df, { count <- ave(type, color, FUN=function(x) length(unique(x)))})
type
karakter vektör değil faktör olduğundan emin olun: Count number of observations/rows per group and add result to data frame