R 具有特征尺度的线性回归

R 具有特征尺度的线性回归,r,regression,normalization,rescale,R,Regression,Normalization,Rescale,我有一个关于线性回归中的特征缩放的一般性问题 我有一个数据集,相当于两年的数据。特定列第一年的数据值与第二年的数据值完全不同。我假设在计算第一年变量和第二年变量时,可能存在不同的属性 无论如何,下面是数据集的外观。我将展示每年的前6行: Date Col1 2015-01-01 1500 2015-01-02 1432 2015-01-03 1234 2015-01-04 1324 2015-01-05 1532

我有一个关于线性回归中的特征缩放的一般性问题

我有一个数据集,相当于两年的数据。特定列第一年的数据值与第二年的数据值完全不同。我假设在计算第一年变量和第二年变量时,可能存在不同的属性

无论如何,下面是数据集的外观。我将展示每年的前6行:

Date             Col1
2015-01-01       1500
2015-01-02       1432
2015-01-03       1234
2015-01-04       1324
2015-01-05       1532
2015-01-06       1424
.
.
.
2016-01-01         35
2016-01-02         31
2016-01-03         29
2016-01-04         19
2016-01-05         22
2016-01-06         32
当我想要预测这个数据集时,很明显,它将预测负面的结果,但实际上,数据只是以某种方式重新缩放了

如果我同样应用特征缩放,我如何恢复到原始数据集以进行预测

normalize <- function(x){
  return((x-min(x)) / (max(x)-min(x)))
}

scaled_data <- 
  df %>%
  group_by(Date %>%
  mutate(NORMALIZED = normalize(Col1))
标准化%
变异(标准化=标准化(Col1))

当然可以。尽管您自己提供了答案,但还是可以将其放在函数中

这一个应该给出预测值和原始向量

backtransform <- function(value, x) { value * (max(x) - min(x)) + min(x) }

backtransform您需要保存最小值和最大值才能将结果转换回原始比例。那么答案是:
Predicted_original_Scaled_Number=Predicted_Feature_Scaled_Number*(max_original-min_original)+min_original
?这正是我想要的,谢谢。你介意把它作为一个答案来给你评分吗?
backtransform2 <- function(value, min, max) { value * (max - min) + min }