Sadece ddply
ile başlıyorum ve çok yararlı buluyorum. Bir veri çerçevesini özetlemek ve ayrıca özetlenen sütunun belirli bir değere sahip olup olmadığına bağlı olarak son satırdaki bazı satırlardan kurtulmak istiyorum. Bu, SQL'de HAVING
ve GROUP BY
gibidir.Ddply'da özetlemenin yanı sıra filtreleme yapmak için herhangi bir yol var mı?
input = data.frame(id= c(1, 1, 2, 2, 3, 3),
metric= c(30,50,70,90,40,1050),
badness=c(1, 5, 7, 3, 3, 99))
intermediateoutput = ddply(input, ~ id, summarize,
meanMetric=mean(metric),
maxBadness=max(badness))
intermediateoutput[intermediateoutput$maxBadness < 50,1:2]
Bu veriyor: İşte bir örnek ne istiyorum, ama her nasılsa ddply
ifadesi içindeki tek bir adımda yapabilirsiniz
id meanMetric
1 1 40
2 2 80
?
: Eğer kod bu şekilde kolaylaştırabilirsiniz
@Arun comment ardından Eğer zaten "plyr" a bağlı değilseniz, yeni ve geliştirilmiş versiyonu olan dplyr'e doğrudan gitmekten faydalanabilirsiniz. – Ben
Sadece ikisinin de aynı anda yüklendiğinden emin olunuz –