R t.test 分组依据

R t.test group by

我偶然发现了一个恼人的问题。我正在尝试一次执行多个独立样本 t 检验,按值分组。

举个例子:我们在 5 个城市测量了男性和女性的工作满意度。对于每个受试者,我们都知道他们所在的城市、性别和满意度。我们可以像这样对整个样本进行 t 检验:

t.test(Score ~ Gender, paired = FALSE)

但是,我想对每个城市进行 t 检验,看看每个城市每个城市的平均工作满意度是否存在差异。我该怎么做?

您可以使用 lapplysplit 来按 t.test

分组
lapply(split(mtcars, factor(mtcars$cyl)), function(x)t.test(data=x, mpg ~ am, paired=FALSE))

这里我使用了mtcars数据,通过使用cyl作为group进行了独立的t.test,对mpg(连续数据)和am(分类数据)进行了t.test。如果这不是您所期待的,请告诉我。