我有大约30行代码,只是做这个事情(获取Z分数):
data$z_col1 <- (data$col1 - mean(data$col1, na.rm = TRUE)) / sd(data$col1, na.rm = TRUE)
data$z_col2 <- (data$col2 - mean(data$col2, na.rm = TRUE)) / sd(data$col2, na.rm = TRUE)
data$z_col3 <- (data$col3 - mean(data$col3, na.rm = TRUE)) / sd(data$col3, na.rm = TRUE)
data$z_col4 <- (data$col4 - mean(data$col4, na.rm = TRUE)) / sd(data$col4, na.rm = TRUE)
data$z_col5 <- (data$col5 - mean(data$col5, na.rm = TRUE)) / sd(data$col5, na.rm = TRUE)
有没有什么方法,可能使用apply()
或其他方式,可以像Python一样简单地执行以下操作:
for col in ['col1', 'col2', 'col3']:
data{col} = ... z score code here
感谢R语言的朋友们。
colMeans
和 这个问题。 - Thomas