Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Standard Errors for Standardized Regression Coefficients (Beta)

    This might sound a stupid question so I apologize in advance.

    When I report regression results with standardized coefficients, is it always advisable to include the standard errors in the table?

    To get standardized coefficients I use the beta command, after reg.
    If I want to report the standar errors for beta coefficients, how do I get them? O should I report the ones for unstandardized coefficients (which could also be much bigger than 1)?
    Last edited by Andrea Arancio; 11 Nov 2015, 03:31.

  • #2
    Or I'm wondering if a better approach would be to standardize variables before runngin reg, and then running normal reg, without beta.
    In this case I would get coefficients that are greater than one and still an intercept that is different from 0. Would it be ok to report the intercept in this case?
    Last edited by Andrea Arancio; 11 Nov 2015, 05:08.

    Comment


    • #3
      If you really need to report standardized regression coefficients and their standard errors, the simplest way to get them is to re-run your regression using -sem- with the -standardized- option.

      That said, in my not so humble opinion, standardized regression coefficients usually create more confusion than anything else. The fact that a confidence limit > 1 bothers you is already evidence that you, yourself, do not really understand them. So is the fact that you would even consider reporting the unstandardized confidence limits as if they applied to the standardized coefficients. In fact, standardized regression coefficients themselves can be greater than 1. They are not correlation coefficients (except in the case where there is only a single predictor in the regression.)

      I avoid standardized regression coefficients like the plague, and encourage others to do the same in all but the rare circumstances where they are truly helpful. (I realize the entire mental health community strongly disagrees with me about this.)

      Comment


      • #4
        To get the Standard Errors for Standardized Regression Coefficients (Beta)
        if you have dataset on (y x1 x2), apply these steps:

        Code:
        clear all
         input y x1 x2
        99.2   96.7   101.0
        99.0   98.1   100.1
        100.0  100.0  100.0
        111.6  104.9  90.6
        122.2  104.9  86.5
        117.6  109.5  89.7
        121.1  110.8  90.6
        136.0  112.3  82.8
        154.2  109.3  70.1
        153.6  105.3  65.4
        158.5  101.7  61.3
        140.6  95.4   62.5
        136.2  96.4   63.6
        168.0  97.6   52.6
        154.3  102.4  59.7
        149.0  101.6  59.5
        165.5  103.8  61.3
         end
        
        * (1) regress command for Standardized variables
        
         local varlist "y x1 x2"
         tempvar ZV
         foreach var of local varlist {
         egen double `ZV'_`var' = std(`var')
         }
         regress y x1 x2 , beta
         regress `ZV'_*
        
        ** note that there are no changes in SE, but intercept = 0 in the second command
        
        * (2) as Prof. Clyde Schechter recommended you, run (SEM) command:
        
         sem (y <- x1 x2 ) , standardized
        
        ** note that there are changes in SE in both (sem) and (regress) commands
        ** according to degrees of freedom calculation.
        Last edited by Emad Shehata; 11 Nov 2015, 12:37.
        Emad A. Shehata
        Professor (PhD Economics)
        Agricultural Research Center - Agricultural Economics Research Institute - Egypt
        Email: [email protected]
        IDEAS: http://ideas.repec.org/f/psh494.html
        EconPapers: http://econpapers.repec.org/RAS/psh494.htm
        Google Scholar: http://scholar.google.com/citations?...r=cOXvc94AAAAJ

        Comment


        • #5
          If you really need to report standardized regression coefficients and their standard errors, the simplest way to get them is to re-run your regression using -sem- with the -standardized- option
          Hi Clyde (and others) - thanks for this. I am just trying to interpret what exactly you meant here in a coding sense for getting the SEMs? I couldn't quite figure out Emad's code either - as it might apply to my listcoef command.

          For example, how would one apply what you mentioned above to the below code to get SEM's for the standardized betas? (appreciating and understanding your issues with them in general of course - in my case I am using them simply to help illustrate a point between multiple biomarkers for a single exposure variable)

          Code:
          regress glucose work_sitting waist_12   if include==1 ,beta
          listcoef
          (p.s. I've removed a lot of variables from example for simplicity). Appreciate that ,beta likely not required if using listcoef.
          Last edited by patrick handcock; 10 Dec 2017, 05:31.

          Comment


          • #6
            The corresponding code in SEM would be:
            Code:
            sem (glucose <- work_sitting waist_12) if include == 1, standardized
            -listcoef- is not part of official Stata and I am not familiar with it, so I can't advise you on how it does or does not deal with -sem- output.

            Comment


            • #7
              I don't think `listcoef` gives you standard errors?

              Rerunning regression is automated by the `stdBeta` command (try "search stdBeta" to find it).

              Once installed, you can try

              Code:
              regress glucose work_sitting waist_12 if include==1 ,beta 
               stdBeta, se
              Doug Hemken
              SSCC, Univ. of Wisc.-Madison

              Comment


              • #8
                Thanks a lot Clyde and Doug - this is very helpful!

                I'd been trying to avoid manually standardizing all the variables prior to running regression, mainly to avoid making the mistake of not standardizing only the variables from the sample of interest (as opposed to the whole data set). I also wasn't quite sure what to do with the factor covariates in model (e.g. ethnicity, marital status etc) and also variables that has already been standardized/transformed (i.e. is it Kosher to run a standardized regression on an already standardized outcome variable - e.g. a cardiometabolic risk z-score? Didn't seem correct to do so?).

                This is why I was playing around with listcoef command post regression. Yes Doug you are right listcoef doesn't seem to give standard errors, but does provide useful information.

                Both listcoef and stdBeta methods work to get standardized regression coefficients, but stdBeta works perfectly to get the standardized b and standard errors. Thanks again!
                Last edited by patrick handcock; 10 Dec 2017, 16:11.

                Comment

                Working...
                X