SPSS和Stata输出不同

机器算法验证 回归 spss 状态
2022-03-17 04:08:26

我精通 Stata,但正在为我的新职位学习 SPSS。我正在使用一个简单的数据集进行非常基本的回归并进行比较以查看结果是否相同。他们不是。我很接近,但 beta 的大小和重要性略有不同。数据从 Excel 复制并粘贴到每个文件中;我没有在 SPSS 中使用 Stata 文件,反之亦然。对于 SPSS,我没有加权,它使用列表删除,它在“输入”方法上。我认为 Stata 正在做同样的事情,作为它的默认值(但如果我错了,请纠正我,这是一个不同的默认值!)。

关于还有什么要检查的任何想法?我只是在做一个简单的线性回归。

数据:https ://www.dropbox.com/s/8g31cjf8vr69i44/rwj%20county%20data.xls?dl=0

句法

SPSS

REGRESSION
/MISSING LISTWISE
/STATISTICS COEFF
/DEPENDENT FreeLunch
/METHOD=ENTER FoodInsecure Rural Female @18 Hispanic.

(或者,对于点击,分析->回归->线性;强制在“方法”下选择进入/逐步/删除/后退/前进。)

斯塔塔

reg percentfreelunch percentfoodinsecure rural female under18 hispanic

数据在 Excel 中并粘贴到两者中。

结果

SPSS

           Var. |   Unst.B | Std.Err. |   St.B |     t | Sig.
     (Constant) | -139.616 |   66.652 | -2.095 | .045
% Food Insecure |    2.785 |     .674 |   .546 | 4.131 | .000
          Rural |     .131 |     .048 |   .404 | 2.701 | .011
         Female |    2.657 |    1.170 |   .372 | 2.270 | .031
           < 18 |    -.416 |     .583 |  -.145 | -.715 | .480
       Hispanic |    1.156 |     .236 |  1.092 | 4.905 | .000

斯塔塔

               Var. |     Coef. | Std.Err. |     t | P>|t|
percentfoodinsecure |   2.76532 | .6741544 |  4.10 | 0.000
              rural |  .1378976 | .0495354 |  2.78 | 0.009
             female |  2.826711 | 1.204272 |  2.35 | 0.026
            under18 | -.3799895 |  .588423 | -0.65 | 0.523
           hispanic |  1.168375 | .2398765 |  4.87 | 0.000
              _cons | -149.3858 |  69.0891 | -2.16 | 0.039
2个回答

问题(令人惊讶)与粘贴期间的舍入值有关。

在 Excel 中,大多数值是在其他地方计算的,并记录为双精度值(大约 16 位小数精度)。% Food Insecure实际存储到少量小数位(一位)。 没有任何数据列按照 Excel 中的显示方式存储。在粘贴过程中,接收应用程序通常会接受出现的数据,而不是实际存储的数据!

在这种情况下,数据的四舍五入很重要,因为对于几个变量——尤其是女性百分比和粮食不安全百分比——四舍五入的数量可能是数据标准偏差的一个可观的部分。

当我在R使用中直接读取Excel数据时,我准确地xlsx::read.xlsx再现了SPSS结果当我将数据四舍五入为整数(对于)并将其他数据四舍五入到小数点后 - 正如它们在将它们粘贴到时出现的那样- 我得到了新的结果,但估计的系数有明显的变化例如,拦截% Free LunchR139.616变成133.897.

我无法重现 Stata 结果R(我的汇总统计数据与 Nick Cox 提出的数据不太一致:我的意思% Food insecure15.67代替15.81),但我怀疑如果我将它们粘贴到我的 Stata 副本中,我会得到报告的 Stata 结果。(一个重要线索是为最小值和最大值呈现的四舍五入值:在大多数情况下,这些不是Excel 文件中实际记录的最小值和最大值。)

两组结果之间的差异只是标准误差的一小部分,因此它们——在这种统计意义上——无关紧要。

不存在共线性问题:VIF 很好而且很低。

道德

当您关心您的数据时,请直接阅读它们:不要通过复制粘贴或转录手动干预。

这不是一个真正的答案,但是除了这里没有简单的方法来显示输出。

这是我在 Stata 13 中得到的,经过复制和粘贴以及一些重命名。

所使用的变量没有缺失值,因此这两个程序可能对缺失值做什么都无关紧要。

2/6 变量以整数表示;4/6 保留一位小数。请注意,我遵循的确切路线的结果是带小数位的变量被保存为double. 其他路线可能会产生float类型的变量。

检查两个回归中是否包含 36 个观察值(案例)。

请检查你是否得到相同的。

. d percentfreelunch percentfoodinsecure rural female under18 hispanic

                 storage   display    value
   variable name   type    format     label      variable label
   -----------------------------------------------------------------------------------------
   percentfreelu~h byte    %10.0g                % Free Lunch
   percentfoodin~e byte    %10.0g                % Food Insecure
   rural           double  %10.0g                Rural
   female          double  %10.0g                Female
   under18         double  %10.0g                < 18
   hispanic        double  %10.0g                Hispanic


   . reg percentfreelunch percentfoodinsecure rural female under18 hispanic

        Source |       SS       df       MS              Number of obs =      36
  -------------+------------------------------           F(  5,    30) =    8.27
         Model |  1578.09245     5   315.61849           Prob > F      =  0.0001
      Residual |  1145.12977    30  38.1709925           R-squared     =  0.5795
  -------------+------------------------------           Adj R-squared =  0.5094
         Total |  2723.22222    35  77.8063492           Root MSE      =  6.1783

  -------------------------------------------------------------------------------------
     percentfreelunch |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
  --------------------+----------------------------------------------------------------
  percentfoodinsecure |    2.76532   .6741544     4.10   0.000     1.388513    4.142127
                rural |   .1378976   .0495354     2.78   0.009     .0367327    .2390624
               female |    2.82671   1.204272     2.35   0.026     .3672593    5.286162
              under18 |  -.3799895    .588423    -0.65   0.523     -1.58171    .8217307
             hispanic |   1.168375   .2398765     4.87   0.000     .6784822    1.658269
                _cons |  -149.3857   69.08908    -2.16   0.039    -290.4845   -8.287025
  -------------------------------------------------------------------------------------

编辑:来自Stata的一些汇总统计数据

. su percentfreelunch percentfoodinsecure rural female under18 hispanic, sep(0)

     Variable |       Obs        Mean    Std. Dev.       Min        Max
 -------------+--------------------------------------------------------
 percentfre~h |        36    46.27778    8.820791         29         72
 percentfoo~e |        36    15.80556    1.785968         12         20
        rural |        36    44.37222    27.25343        1.3        100
       female |        36    49.95833    1.233201       45.9       51.5
      under18 |        36    21.26389    3.069216       15.6         28
     hispanic |        36    10.86944    8.315178        2.3       32.2