Saya ingin mengelompokkan kerangka data saya pada kolom tertentu dan kemudian menerapkan fungsi ke data yang dikelompokkan yang mengembalikan beberapa kolom. Sebagai contoh, perhatikan hal berikut
Names = append(rep('Mark',10),rep('Joe',10))
Spend = rnorm(length(Names),50,0.5)
df <- data.frame(
Names,
Spend
)
get.mm <- function(data){
return(list(median(data),mean(data)))
}
Di sini, get.mm
mengembalikan daftar dua angka. Saya ingin menerapkan get.mm
ke df %>% group_by(Names)
dan mendapatkan hasilnya memiliki dua kolom, satu untuk setiap output fungsi.
Hasil yang diinginkan seharusnya
Names median mean
<fctr> <dbl> <dbl>
1 Joe 49.89284 49.9504
2 Mark 50.17244 50.0735
Saya telah menyederhanakan fungsinya di sini sebagai sarana demonstrasi, saya tahu saya bisa melakukan sesuatu seperti itu
df %>% group_by(Names) %>% summarise(median = median(Spend), mean = mean(Spend))
summarise_at()
dan cran.r-project.org/web/packages /dplyr/sketsa/ - person Alex P   schedule 28.07.2017