R 从线性回归输出中获得各组的平均分数

R 从线性回归输出中获得各组的平均分数,r,statistics,linear-regression,R,Statistics,Linear Regression,我用线性回归预测了性别、种族及其相互作用对生活满意度的影响 lm2 <-lm(nids$satisfaction~nids$male+nids$race+nids$male:nids$race) lm2 | t |) (截距)4.17751 0.05467 76.410

我用线性回归预测了性别、种族及其相互作用对生活满意度的影响

lm2 <-lm(nids$satisfaction~nids$male+nids$race+nids$male:nids$race)
lm2 | t |)
(截距)4.17751 0.05467 76.410<2e-16***
nids$male 0.39318 0.08564 4.591 4.45e-06***
nids$race 0.87095 0.03421 25.459<2e-16***
nids$男性:nids$种族-0.17947 0.05261-3.411 0.000649***
---
签名。代码:0'***'0.001'***'0.01'*'0.05'.'0.1''1
剩余标准误差:12016自由度上的2.358
多重R平方:0.07414,调整后的R平方:0.07391
F-统计:3和12016 DF上为320.7,p-值:<2.2e-16
我需要提供(1)每个性别组以及(2)每个种族组(共4个)的生活满意度平均分

那么,我如何使用R来实现它呢?我知道我可以汇总数据,但有一点提示,我可以使用一些系数来计算性别和种族群体的满意度水平平均值


提前非常感谢。

一个快速的方法:

malenids <- nids[nids$male == 1, ]
femalenids <- nids[nids$male == 0, ]
lapply(split(malenids, malenids$race), function(x) mean(x$satisfaction))
lapply(split(femalenids, femalenids$race), function(x) mean(x$satisfaction))

malenids请提供一个可复制的示例。在R中有许多数据集可以实现这一点。你的意思是上载数据集吗?欢迎使用StackOverflow。A会很有帮助最简单的方法是从您的数据中提取并使用内置集:
help(pack=“datasets”)
。更新了我的帖子,添加了指向数据和.r文件的链接。是的,但问题是如何仅使用此线性回归输出:(,它背后有什么原则吗?好的,被曲解了。这背后的原因是什么?为什么不生成预测,然后像上面那样在样本中进行聚合或计算?但“生成预测”是什么意思?使用
predict(lm2)
fitted(lm2)
因为您没有提供任何新数据。@dmg签出
fit
malenids <- nids[nids$male == 1, ]
femalenids <- nids[nids$male == 0, ]
lapply(split(malenids, malenids$race), function(x) mean(x$satisfaction))
lapply(split(femalenids, femalenids$race), function(x) mean(x$satisfaction))