r每个元素与组均值的差异

时间:2016-10-14 15:13:47

标签: r

我的数据框包含两种类型cols - numeric和factor。 如何在新列中区分每个元素与组平均值。 我可以使用'aggregate'找到组均值,但我不能在每个元素之间提取差异,而是它的组均值(不同的长度)。

1 个答案:

答案 0 :(得分:2)

您可以使用基本线性模型轻松完成(我删除了截距,以便每个效果的值都是模型摘要中的组平均值)。我们以data(mtcars)为例,变量am是您的分组因子,mpg是您的数字变量:

mtcars$am <- factor(mtcars$am)
lm(mpg~am-1, mtcars)$resid

该模型的残差根据定义元素及其组均值之间的差异。