Apologies if I am missing something obvious with this question, but I have dug around online a fair bit and can't quite seem to find the answer I am looking for.

At my organization we have health survey data which is sampled using a complex sampling plan, in order to be representative at the national and regional levels. We use SPSS complex samples for the bulk of our analysis work. In case it matters, the sampling plan is summarized below:

           Stage 1 (equal probabilities without replacement): 
           Strata: region_num, sub_region_num, comm_size_num
           Clusters: residence_merge
           Weights: weight_final
           Probability of inclusion: inc_prob_1

           Stage 2 (equal probabilities without replacement):
           Strata: age_gender_group
           Clusters: <no clusters>
           Weights: <no weights>
           Probability of inclusion: inc_prob_2

I have been asked by a partner organization to produce some age-standardized tables in order to compare with a different dataset. I am familiar with the method outlined here: https://www.ibm.com/support/pages/can-spss-produce-standardized-rate-estimates-correct-standard-errors-under-complex-sampling which produces age-standardized rates, but what I would like to produce are age-standardized frequency tables for categorical variables in the dataset, i.e., likert-style responses.

My question is, how should I go about producing these age-standardized tables? I know I could create dummy variables for each category and compute the rate separately, but that seems unnecessarily cumbersome-- surely there is a better way? Also, I could (and have, for exploratory purposes) create a weighting variable, which when applied produces the correct mean estimates, but my hunch is that the standard error (and consequently my confidence intervals and CVs) will not be correct.

Any and all guidance would be appreciated.


1 Answer 1


The Likert values are responses or outcomes, and are not obviously disease rates. Further, you are viewing age as a covariate that you want to control for. Aside from focusing on direct vs. indirect standardization methods based on how stable the rates are (population denominator size), you might regress the Likert scores on subject age, then acquire the residuals. Multivariate normal linear regression (MVNREG) would do a reasonable job here, where all the Likert-based item (question) responses form the columns of the $\mathbf{Y}$ matrix. Then run MVNREG and regress $\mathbf{Y}$ on subject age. Subtract the predicted values of Likert scores from the observed, and these will be new Likert-values adjusted for (controlled for) age. Use the age-adjusted Likert scores for other or subsequent analyses in your workflow.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.