r-有没有办法将我的数据集扩展到每个日期的[-1,1]区间



我目前有一个由13个变量组成的数据集,包含754个唯一日期(1957年3月至2019年12月(。所有日期都会在数据集中出现很多次(我有大约300万次观测(。我必须按日期将所有变量标准化为[-1,1]。我尝试使用以下代码,但它对整个数据集进行了规范化,而不是按年份进行规范化。我试着寻找解决方案,但找不到,所以我希望你们能帮助我。

normalize <- function(x) {
return ((2*(x - min(x, na.rm = TRUE)) / (max(x, na.rm = TRUE) - min(x, na.rm = TRUE)))-1)}
Normalized_data <- Complete_data %>%
group_by(Date) %>%
as.data.frame(apply(Complete_data,2,normalize))

简单地使用mutate应该可以使用

Complete_data %>%
group_by(Date) %>%
mutate(normalized = normalize(Complete_data))

请注意,如果您提供数据集的一部分(最小示例(,则会有所帮助

最新更新