help for svypxcat

Predicted means or proportions for nominal X's for survey data

svypxcat yvar [if exp] [in range], xvar(xvar1 [xvar2]) [ adjust(covlist) model subpop(subpop_spec) level(#) linear graph bar savepred(filename) graph_options ]


svypxcat requires that the survey design variables be identified using svyset

svypxcat calculates and optionally graphs means from linear regression models or proportions from logistic regression models corrected for the survey sampling scheme (weights) for one or two nominal X variables, adjusted for covariates. If a second X is specified, means or proportions are calculated for all possible combinations of X categories, and an interaction effect is tested. Optionally, model estimates and/or a graph may be displayed. Dummy variables are created for xvar1. The lowest dummy variable defaults to the reference group. If xvar2 is specified, dummy variables are created for it, as well as interaction terms. (Updated for Version 9)

Variables and options required

yvar is the dependent variable

If yvar is continuous, defaults to linear regression

If yvar is binary (0,1), defaults to logistic regression

xvar(xvar1) is the nominal variable for categories of estimated means or proportions

xvar(xvar1 xvar2) gives categories of all combinations of xvar1 and xvar2; interaction between xvar1 and xvar2 is tested (Partial F for linear regression or Wald test for logistic regression)


adjust(covlist) lists any covariates. If none are specified, unadjusted means or proportions are reported. Covariates are set to their mean, based on observations used in the analysis, or can be set to user specified values (e.g., age=50 gender=1). (Note: if an adjust variable is nominal with more than 2 categories, it must be defined with dummy variables in the adjust list, whereas dummy variables are created automatically in the xvar option)

model -- for display purposes only, this option prints the regression table

subpop(subpop_spec) -- specifies that estimates be computed for the single subpopulation identified in subpop_spec

level(#) -- specifies the confidence level, in percent, for calculation of confidence intervals (default=95%)

graph -- if one X (xvar1), graphs means or proportions and confidence intervals; if both xvar1 and xvar2 are specified, points are graphed for each mean or proportion, but confidence intervals are not graphed; xvar1 is used for the x-axis with separate points for categories of xvar2

bar -- can be used with the graph option to display a bar graph instead of points

linear -- requests linear regression when yvar is binary (0,1); if not specified, logistic regression is assumed

savepred(filename) -- saves adjusted values and CI's to a Stata file


. svypxcat chol, xvar(race) adjust(sbp age=50) model

Uses linear regression to calculate mean cholesterol level by race category, adjusted for mean sbp and age=50

. svypxcat chol, xvar(ses) adjust(sbp age) graph

Uses linear regression to calculate mean cholesterol by levels of socio-economic status, adjusted for sbp and age; displays graph

. svypxcat htn, xvar(gender race) adjust(age smoke etoh)

Uses logistic regression to calculate proportion of hypertensives for all combinations of gender (2 categories) and race (4 categories) for a total of 8 proportions, adjusted for age, smoking status, and alcohol consumption; tests for interaction between gender and race

. svypxcat htn, xvar(race gender) adjust(age smoke etoh) graph bar

Uses logistic regression to calculate the adjusted proportion of hypertensives for all combinations of gender and race; bar graph of proportions, race on the x-axis

Also see

Manual: [U] 30 Overview of survey estimation, [SVY] intro, [SVY] svy

Online: help for predxcat (if loaded), svy


J.M.Garrett, Professor, School of Medicine, University of North Carolina,