*! version 1.1.0 10aug2011
help zscore06

Title

zscore06 -- Calculate anthropometric z-scores using the 2006 WHO child growth standards

Syntax

zscore06
[if] [in]
[,
options]

Main
a(varname) child's age varname

s(varname) child's sex varname

h(varname) child's length varname

w(varname) child's weight varname

w(varname) child's weight varname

female(#) value used for girls in sex varname

male(#) value used for boys in sex varname

measure(varname) recumbent length or standing height varname

recum(#) value used for recumbent length in recum varname

stand(#) value used for standing height in recum varname

o(varname) oedema varname

oyes(#) value used for presence of oedema in oedema varname

ono(#) value used for absence of oedema in oedema varname

Description

zscore06 calculates anthropometric z-scores using the 2006 WHO child growth standards.
Lenght/heigh-for-age, weight-for-height, BMI-for-age and weight-for-age Z-scores are calculated for children
0 to 5 years of age.

Options

Main

a(varname) specifies the child age varname. Age must be in months.

s(varname) specifies the child sex varname. The default is to code boys as 1
and girls as 2. If other values are used, they must be specified in male(#) and female(#).

h(varname) specifies the child length/height varname. Lenght/height must be
in cm. Recumbent lenght is assumed for children < 24 months, standing height for children > 24 months.
If this is not the case, measure(varname) must be specified. At least one of
h(varname) or w(varname) must be specified.

w(varname) specifies the child weight varname. Weight must be in kg. At least one of
h(varname) or w(varname) must be specified.

female(#) value used for girls in the child sex varname specified in s(varname) if
different from 2.

male(#) value used for boys in the the child sex varname specified in s(varname) if
different from 1.

measure(varname) specifies the varname indicating whether recumbent length or standing
height was measured. If the 24 month cut-off was correctly applied measure(varname) need not be
pecified. If the 24 month cut-off was not used correctly measure(varname) needs to be
1 for recumbent length and 2 for standing height. If other values are used, they must be specified
in recum(#) and stand(#).

recum(#) value used for recumbent length in the measure varname specified in measure(varname)
if different from 1.

stand(#) value used for standing height in the measure varname specified in measure(varname)
if different from 2.

o(varname) specifies the varname indicating whether oedema was observed. zscore06 assumes
that children had no oedema. If this is the case, there is no need to define o(varname). If some children
had oedema the default is to code children with oedema as 1 and children wihtout oedema as 2. If other values
are used, they must be specified in oyes(#) and ono(#). Weight-for-age, weight-for-height and
BMI-for-age are not calculated for children with oedema.

oyes(#) value used for the presence of oedema in the oedema varname specified in o(varname)
if different from 1.

ono(#) value used for the absence of oedema in the oedema varname specified in o(varname)
if different from 2.

Remarks

Even though zscore06 uses the same algorithm to calculate anthropometric z-scores as WHO's igrowup macro, there are
some differences in the created variables:

. zscore06 does not calculate any of the z-scores if child age is missing. Igrowup does calculate the
weight-for-height z-score.

. If the age, height or weight values are outside the range of the reference values (e.g. a child older than 5 years
of age), the corresponding z-score(s) will be set to 99. Igrowup will assign a missing value to these observations.

. Differences in the precision of the storage types used in zscore06 (all stored as double) and igrowup (some stored as float) can lead to
small differences (<=0.01) in the calculated Z-scores. These differences, however, are rare (<1/1000). In the cases we have identified to date,
we believe that zscore06 produces the correct result. For example, take the following child:

variable value

sex girl
age (days) 407
length (cm) 70.5

The reference values for this child are:

parameter reference value

l 1
m 75.6546
s 0.03503

Using the equation from the WHO publication cited below, we find:

haz06 =	(((70.5/75.6546)^1)-1)/(0.03503*1)} = -1.94499949 ~= -1.94 as calculated by zscore06 and not -1.95 as calculated by igrowup

Acknowledgements

James Beard (University College London) provided very useful comments on the previous version of this command.

References

Mercedes de Onis et al. 2006. WHO child growth standards : length/height-for-age, weight-for-age, weight-for-length, weight-for-height
and body mass index-for-age : methods and development. World Health Organization. Geneve.

Citation of zscore06

zscore06 is not an official Stata command. It is a free contribution
to the research community. Please cite it as such:

Leroy, Jef L (2011).
zscore06: Stata command for the calculation of anthropometric z-scores using the 2006 WHO child growth standards
http://www.ifpri.org/staffprofile/jef-leroy

Author

Jef L Leroy, International Food Policy Research Institute, Washington DC, USA (j.leroy@cgiar.org)