Re: [問題] 表格問題

作者: celestialgod (天)   2015-12-05 23:36:10
※ 引述《qaz5746986 (雲之痕)》之銘言:
: [問題類型]:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
: [軟體熟悉度]:
: 入門(寫過其他程式,只是對語法不熟悉)
: [問題敘述]:
: 請教各位前輩,如想把r內建的iris資料集,計算出specis三個花種類別之下
: 其餘4個連續型變數的mean var 並做成一大張表格,該怎用迴圈寫出來較簡潔呢?
: 我只會用tapply一個一個算再bind起來...請各位前輩教導
最簡單的寫法,其他還有by, aggregate之類的
funs = list(mean, sd, var, min, median, max)
MM = matrix(NA, 3, (ncol(iris)-1)*length(funs))
for (i in seq_along(funs))
for (j in 1:(ncol(iris)-1))
MM[,(i-1)*(ncol(iris)-1)+j] = tapply(iris[,j], iris[,5], funs[[i]])
最好的方式:
library(dplyr)
iris %>% group_by(Species) %>%
summarise_each(funs(mean, sd, var, min, median, max))
作者: psinqoo (零度空間)   2015-12-06 10:29:00
推 dplyr
作者: qaz5746986 (雲之痕)   2015-12-06 13:21:00
感謝解惑 又學到一個好用套件了!請教版主,照上面跑只顯示mean 要怎一次顯示兩變數?謝謝 問題解決了~

Links booklink

Contact Us: admin [ a t ] ucptt.com