Announcement

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

  • mi impute chained: dealing with binary dependent variable?

    Hello everyone,

    I'm using the following commands to impute missing values.

    mi set mlong
    mi register imputed treatment $continous
    mi impute chain (logit) treatment (regress) $continous , add(10) rseed (54321)
    mi estimate: regress treatment $continous

    The problem is with the last command since treatment is a binary variable with no missing values, is it okay to use regress with it? The command doesn't work when I replace regress with logit.

    Also how can i be sure that the missing values are replaced by mi impute chain rather than being stored in stata memory?

    * $continous is simply a list of variables which are continuous in nature. They are basically the variables that I will be using (after imputation) for matching via PSM.
    Last edited by danishussalam; 02 Mar 2017, 04:27.

  • #2
    Many things not clear here.

    If treatment has no missing values, why do you register it as imputed? If it has missing values you should consider deleting the cases with missing values from the estimation sample after imputation (cf. von Hippel 2007).

    Please review the FAQ on statements like

    The command doesn't work when I replace regress with logit.
    What does this mean? Do you get an error message? Which? Does the model give you unexpected results? Which? Please show what you typed and what Stata did in response.

    In general using a linear probability model would require correction for the estimated covariance matrix because the model implies heteroscedasticity.

    Best
    Daniel


    von Hippel, Paul T. (2007).Regression with Missing Ys: An Improved Strategy for Analyzing Multiply Imputed Data. Sociological Methodology, 37, pp. 83-117.

    Comment


    • #3
      Hey Dainel,

      Thanks for replying. I was able to answer most of the questions raised above. I however, am still confused on how to replace the missing values with the imputed values? I believe the mi impute chain doesn't really do that. It simply impute values which can later be used with mi estimate and the preferred regression model. I on the other hand want to use the variables with imputed observations form Propensity Score Matching.

      Any help on that will be appreciated.

      Comment


      • #4
        mi impute creates new observations (or variables in mi set wide format) in your dataset where the imputed values are stored.

        Best
        Daniel

        Comment


        • #5
          Thanks Dainel. You're right. I was not able to see them only because I was using mi set long.

          Comment


          • #6
            Originally posted by danishussalam View Post
            Hello everyone,

            I'm using the following commands to impute missing values.

            mi set mlong
            mi register imputed treatment $continous
            mi impute chain (logit) treatment (regress) $continous , add(10) rseed (54321)
            mi estimate: regress treatment $continous

            The problem is with the last command since treatment is a binary variable with no missing values, is it okay to use regress with it? The command doesn't work when I replace regress with logit.

            Also how can i be sure that the missing values are replaced by mi impute chain rather than being stored in stata memory?

            * $continous is simply a list of variables which are continuous in nature. They are basically the variables that I will be using (after imputation) for matching via PSM.
            Just a quick note. I believe that if you want to include treatment in the MI equation, but there are no missing values, this should be the "proper" syntax:

            Code:
            mi set mlong
            mi register imputed $continous
            mi register regular treatment
            mi impute chain treatment (regress) $continous = i.treatment , add(10) rseed (54321)
            mi estimate: regress treatment $continous
            You can add any other variables you think predict missingness on the right hand side of the imputation specification.
            Be aware that it can be very hard to answer a question without sample data. You can use the dataex command for this. Type help dataex at the command line.

            When presenting code or results, please use the code delimiters format them. Use the # button on the formatting toolbar, between the " (double quote) and <> buttons.

            Comment

            Working...
            X