如何标准化面板数据框中的选定列

How to standardize selected columns in panel data frame

当数据框是面板时,如何标准化数据框中的 SELECTED 列?比方说,我只想通过在下面的示例数据框中明确选择 X2、X4、X6、X7 和 X9 列来标准化它们,同时考虑面板数据结构。

df <- data.frame(unit=rep(1:250, 4),  
             year=rep(c(2012, 2013, 2014, 2015), each=250),
             replicate(10,sample(0:50000,1000,rep=TRUE)))

可以肯定的是:对于标准化,我的意思是通常减去平均值并除以标准差程序。

我们可以使用mutate_at

library(dplyr)
df %>%
   group_by(unit) %>%
   mutate_at(vars(X2, X4, X6, X7, X9), funs(as.vector(scale(.))))