我喜歡plyr將數據幀分成多個數據集然後在每個數據集上執行相同操作的能力。最好的部分是當它將結果顯示爲一個整齊緊湊的標籤表格時。我喜歡使用each()將一堆計算投入到一行中。但是,我不明白爲什麼在ddply參數中使用匯總功能會導致輸出失敗,並使其輸出很長並且沒有標籤。看看這裏,看看我的意思。你能告訴我我做錯了什麼嗎?我更喜歡使用總結。如何從plyr輸出寬而不是長的總結
讓我們先設置一個示例數據框。想象一下,你有60人蔘加了一項研究。其中20個很有趣,20個很聰明,20個很好。然後每個主題都得到一個分數。
type<-rep(c("funny","clever", "nice"),20)
score<-rnorm(60)+10
data<-data.frame(type,score)
現在我想展示的平均分,平均分,最低分和最高分每個3種類型的人
ddply(data,.(type), summarise, each(mean,median,min,max)(score))
線上面應該給一個漂亮的表(表3行 - 每種類型1和4列數據)。唉,它只給出一整列長表,只有一列數字,其中沒有一列標出。
ddply(data,.(type), function(jjkk) each(mean,median,min,max)(jjkk$score))
上面的代碼給了我想要的。你能解釋我對ddply語法的理解嗎?