作者winter7531 (1)
看板R_Language
标题[问题] Data frame 筛选
时间Sat Sep 26 22:32:50 2020
图为
https://imgur.com/a/lyA1TRJ
想请问高手
A_IQ <- mean (as.matrix (subset(X, bloodtype=="A", IQ))); A_IQ
B_IQ <- mean (as.matrix (subset(X, bloodtype=="B", IQ))); B_IQ
AB_IQ <- mean (as.matrix (subset(X, bloodtype=="AB", IQ))); AB_IQ
O_IQ <- mean (as.matrix (subset(X, bloodtype=="O", IQ))); O_IQ
X为以上图
目前只算出各血型的平均IQ,
但不知道要怎麽显示谁才是最高的IQ
EX:A血型的平均IQ最高
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.169.78.42 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1601130772.A.755.html
1F:推 keroro3456: 先对血型做groupby的mean之後再找平均的最大值? 09/26 23:00
2F:→ winter7531: ↑是 09/26 23:09
3F:推 locka: X %>% group_by(bloodtype) %>% summarize(meanIQ = mean(I 09/27 00:09
4F:推 locka: Q)) %>% top_n(1,meanIQ) 09/27 00:09
5F:推 locka: (以上为使用dplyr套件做法) 09/27 00:10
6F:→ andrew43: 算分组平均的内建方法有aggregate()或tapply() 09/27 22:24
7F:→ andrew43: 之後再找最大值大概就max或sort或order来做 09/27 22:25
8F:推 rebe212296: dplyr套件的arrange(data,data$IQ) 10/02 16:41
9F:→ rebe212296: 你应该先把全部资料令成data,方便後续分析 10/02 16:43
10F:推 rebe212296: X<-data.table(X) 10/02 16:52
11F:→ rebe212296: library(dplyr) 10/02 17:21
12F:推 rebe212296: X_analysis<-X%>%arrange(IQ)%>% group_by(bloodtype) 10/02 17:40
13F:→ rebe212296: %>%mutate(mean=mean(IQ)) 10/02 20:57
14F:推 rebe212296: 我不太懂summarize用法,请问用法谢谢 10/03 00:32