如何在 sas 中计算 rmse


评估回归模型对数据集的拟合程度的一种方法是计算均方误差,它是一个指标,告诉我们模型的预测值与数据集的实际值之间的平均距离。

RMSE 越低,给定模型就越能“拟合”数据集。

求均方误差的公式(通常缩写为RMSE )为:

RMSE =Σ(P i – O i ) 2 / n

金子:

  • Σ是代表“和”的符号
  • P i是数据集中第 i 个观测值的预测值
  • O i是数据集中第 i 个观测值的观测值
  • n 是样本量

以下分步示例展示了如何计算 SAS 中简单线性回归模型的 RMSE。

第 1 步:创建数据

在此示例中,我们将创建一个数据集,其中包含 15 名学生的学习总时数和期末考试成绩。

我们将使用小时作为预测变量并使用分数作为响应变量来拟合一个简单的线性回归模型。

以下代码显示了如何在 SAS 中创建此数据集:

 /*create dataset*/
data exam_data;
    input hours score;
    datalines ;
1 64
2 66
4 76
5 73
5 74
6 81
6 83
7 82
8 80
10 88
11 84
11 82
12 91
12 93
14 89
;
run ;

/*view dataset*/
proc print data =exam_data;

步骤 2:拟合简单线性回归模型

接下来,我们将使用proc reg来拟合简单线性回归模型:

 /*fit simple linear regression model*/
proc reg data =exam_data;
    model score = hours;
run ; 

SAS 中的简单线性回归输出

请注意,输出中的 RMSE 为3.64093

步骤 3:从回归模型中提取 RMSE

如果只想显示该模型的 RMSE 而不想显示其他输出结果,可以使用以下代码:

 /*fit simple linear regression model*/
proc reg data =exam_data outest =outest noprint ;
    model score = hours / rmse ;
run ;
quit ;

/*print RMSE of model*/
proc print data =outest;
    var _RMSE_;
run ; 

在 SAS 中计算 RMSE

请注意,输出中仅显示 RMSE 值3.64093

注意proc reg中的noprint参数告诉 SAS 不要像上一步那样打印整个回归结果输出。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何在 SAS 中执行简单线性回归
如何在 SAS 中执行多元线性回归
如何在 SAS 中执行多项式回归
如何在 SAS 中执行逻辑回归

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注