如何找到另一个变量的每个值的变量的平均值?
我是新来的,所以请原谅这样一个基本的问题,但我刚开始R和我一直在问剩下的我难住了一个问题:如何找到另一个变量的每个值的变量的平均值?
R中使用预装的数据集,mtcars,我m应该为“齿轮”变量的每个值找到“mpg”变量的平均值。我不确定这意味着什么。我假设我需要使用子集?
它是如此基本,所以我有点沮丧,我没有看到在这里做什么....
使用aggregate
:
aggregate(mtcars$mpg,list(mtcars$gear),mean)
## Group.1 x
##1 3 16.10667
##2 4 24.53333
##3 5 21.38000
根据文档,请参阅?aggregate
:
将数据拆分为子集,计算每个子集的汇总统计信息,并以便捷的形式返回结果。
这里,第一个参数mtcars$mpg
是要平均的变量,第二个参数是分组变量的列表,通过它的每一个价值判断的x
子集应用功能,mean
,即第三个参数。
很好的答案,但它可能是一个更清洁的公式接口'聚合(MPG〜齿轮,mtcars,意思)''。 – Barker
在这里编码类的令人沮丧的事情之一是,他们教我们非常基础,并向我们提出有关我们尚未完成的代码的问题。感谢您向我介绍聚合函数!大帮忙! – ROCKaholic
使用dplyr
:
library(dplyr)
mtcars %>%
group_by(gear) %>%
summarise(avg_mpg = mean(mpg))
非常感谢:) – ROCKaholic
或者使用data.table
library(data.table)
as.data.table(mtcars)[, .(avg_mpg = mean(mpg)), by = gear]
你可以试试看这里的教程:http://www.r-tutor.com/r-introduction/data-frame'mtcars'是一个包含行和列的对象。我没有看到整个数据集,但是'mpg'是该数据集的一列,我猜想'gear'也是数据集上的一列。 – scrappedcola