首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >计算按两列分组的统计大小

计算按两列分组的统计大小
EN

Stack Overflow用户
提问于 2022-01-12 20:25:38
回答 1查看 27关注 0票数 0

在R中,我有这样的数据

代码语言:javascript
运行
复制
> a
 ID    row   variant  size  weight    
<dbl>  <chr> <chr>    <dbl> <dbl> 
 1     7     1        22.5  0.00609 
 2     7     1        23.5  0.00704
 3     7     2        22.5  0.00598
 4     8     1        22.5  0.00536
 5     8     2        35.5  0.04043

我想计算统计大小(平均,中位数,sd)的每一行和变体。例如,对于列的大小,应该计算每一行变量的平均值(7-1,7-2,8-1,8-2,.)。到目前为止,我正在通过添加另一列RV来完成这一任务。

代码语言:javascript
运行
复制
a$RV<-paste(a$row, a$variant, sep='.')

并使用tapply()

代码语言:javascript
运行
复制
> tapply(a$size,a$RV,median)
        5.1         5.2         5.3         6.1         6.2         6.3         7.1         7.2 
0.010555175 0.010509383 0.010497835 0.010467480 0.010540752 0.010523763 0.009427733 0.010499771 
        7.3 
0.010504420 

还有更好的机会吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-12 20:38:10

您可以使用group_by()和汇总()。下面是一个例子

代码语言:javascript
运行
复制
library(tidyverse)
your_data %>%
group_by(row, variant) %>%
summarize(
mean = mean(size),
median = median(size),
sd = sd(size)
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70687943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档