Should I impute Missing Laboratory Data? - Confused about MAR-MNAR I am trying to model hospital readmission using both categorical and nominal variables. Laboratory data comprises a big chunk of the nominal variables, the problem is not every patient has laboratory tests done, and for those who do, not the same tests are taken. So, for the 18 laboratory predictors, all contain missing data (ranging from 36 to 58 per cent, with 33 per cent of patients not having tests done) and I am not sure on how to deal with that.
If I understand correctly, MNAR means the missingness is related to what is being measured and with MAR, this is not the case and missing data can be predicted from other collected information. 
From my point of view, laboratory data falls a bit in between since decision to take tests is a bit subjective depending on different clinicians, but tests are also not taken because the measured variables are expected to be OK? 
What would the right approach be in this case? I have been considering:


*

*Impute Lab Data

*Categorize the data such that I have it coded as No test taken/ Normal value/ High value / Low value (or something similar)


Edit: The ultimate purpose of the model would be to be used for discharge of patients and it would be expected that some of those would not have data for lab tests - so I think it would be good to have a variable representing that (categorize), but I am quite inexperienced in this area.
 A: You seem to have two problems disguised as one. The first problem is how to include in your model patients who haven't had any lab work done. In this case, since  a large part of your dataset (33%) is in this category, imputation would bias your analyses quite a bit. Depending on how many patients (actual number of patients, instead of a percentage) are in this category, perhaps it would be best to create a separate model for patients without lab tests.
The second problem is how to deal with the fact that not all patients who have lab work done do all available tests. I see two ways of attacking this problem:


*

*Creating a model which deals with this "natively". As an example, a points-based model where each out-of-ordinary test result gives the patient points, and after a threshold is achieved, recommend against discharge. Absence of any one lab test would yield some preset number of points; or

*Imputing random values to the results of missing lab tests and use simulation to create a distribution of the results of your model. For example, say you are modeling patient health; your output variable  would be "health". Since patient #Y hasn't had test X done, assume a random value for this test. Use your model to calculate patient #Y "health" given this random value for test X. Record this value, and repeat this procedure a million times, each time imputing a random value to test X. In the end, you will have a range of values for patient #Y "health" (in other words, its distribution), which you can use to determine whether patient #Y can be discharged. The more lab tests are missing, the more "spread out" a patient's "health" will be.


Despite both problems involving missing data, they are in my opinion different due to their relative magnitudes. In the first problem, 33% of your data is missing. In the second one, 36% to 58% of the lab tests are missing, but not all at the same time (I presume). This leads me to believe that any one patient will probably have an adequate number of tests done to assess their health.
Please note that these are suggestions for a first approach to solving your problems. You should implement them and see if they give satisfactory results, and then modify them according to what suits you and your problem best.
