查找相对于州的州平均收入的Z评分



我希望在许多值的数据范围内计算z评分年收入。随着州平均收入的平均收入,我希望使用标准偏差和平均国家找到z得分,然后适用于单个行。

data $ yarny_inc是整数,并且数据$状态为50级因子

非常感谢!

假设您的数据是以下形式:

annual_inc  state
(numeric)   (character)
x1          S1
x2          S2
etc.

然后您可以使用dplyr如下:

library(dplyr)
z.score <- data %>%
   group_by(state) %>%
   mutate(annual_z = (annual_inc - mean(annual_inc))/sd(annual_inc))

您还可以相对轻松地找到每个状态的平均值和SD,使用:

data %>%
   group_by(state) %>%
   summarize(sd = sd(annual_inc),
             mean = mean(anuual_inc))

如果您缺少值,只需将na.rm = T添加到meansd命令或首先将它们从数据中滤出。

P.S。您也可以在基本r中执行此操作,但是dplyr还有很多我不介入的其他好处。

最新更新