NAME
Medical::Growth::NHANES_2000 - NHANES 2000 Growth Charts
SYNOPSIS
use Medical::Growth::NHANES_2000;
my $handle = Medical::Growth::NHANES_2000->new;
my $dset = $handle->measure_class_for(measure => 'WtAge',
age_group => 'Infant',
sex => 'Male')
foreach my $pt (get_infant_data() ) {
...
my $wfa_pct = $dset->pct_for_value($pt->age_mon, $pt->wt_kg);
}
DESCRIPTION
Medical::Growth::NHANES_2000 is a measurement system implemented using the Medical::Growth framework, that allows you to compare growth measurements for children to the National Health and Nutrition Examination Survey's (NHANES) 2000 infant and child growth charts. Measurement classes are provided for each of the datasets published by the CDC. These are typically used to compute the percentile for a particular child's measurements relative to the NHANES sample.
In order to compare a particular child's growth measurements to the NHANES 2000 norms (the moral equivalent of plotting the measurement on the appropriate growth chart), you will need to pick the measure class for the growth measurement of interest (the moral equivalent of using the right growth chart). While you can use a particular measurement class directly by name, Medical::Growth::NHANES_2000 also provides ways for you to look up the appopriate measurement class using more flexible syntax, as described below.
Once you have retrieved the measure class, you may use the methods available to manipulate specific values documented in the common Medical::Growth::NHANES_2000::Base class; these may be called as class or instance methods on any of the measurement classes.
METHODS
- measure_classes
-
Returns a list of the names of measurement classes in the Medical::Growth::NHANES_2000 system.
- measure_class_name_for(%criteria)
-
Returns the name of the measurement class matching %criteria. No check is made that the measurement class is actually available (though this will be the case unless something went awry with installation of Medical::Growth::NHANES_2000).
The following elements of %criteria are used to identify the measurement class. Case is not significant for any of the values.
- measure
-
Growth measurement to be examined and basis for comparison. This can be a string of the form measure
for
norm, where measure is the measurement (one ofWeight
,Height
,Length
,Stature
,Head Circumference
, orBMI
) and norm is the norm (one ofAge
,Height
, orLength
). Spaces may be replaced with underscores, andfor
may be replaced withby
, or the entire preposition just replaced by spaces.For convenience, some shorter forms are accepted as well, in the form MeasNorm. In this case, Meas can have the values above, but also
Wgt
,Wt
,Hgt
,Ht
,Stat
,Len
,Head
,HC
, orOFC
, and Norm can have the additional valuesHgt
,Ht
, orLen
.Finally, any of
Height
,Length
, orStature
are mapped toLength
if an infant age_group is specified (see below), or toHeight
if a child age group is specified. - age_group
-
Age range for the norms to be used. In the NHANES 2000 data, this is either infants (ages 0-24 months) or children (ages 2-20 years). Values of
Infant
,Toddler
,Recumbent
,Neonatal
, andNeonate
are taken asInfant
, and values ofChild
,School-age
, andAdolescent
are taken asChild
.If the value looks like a number rather than a label, it is interpreted as an age in months; values of 0-24 map to
Infant
and larger values map toChild
.The key
age
may be used instead ofage_group
; if both are present,age_group
is preferred. - sex
-
Sex of the children from whose measurements the desired norms were constructed. Values of
Male
,M
,Boy
,B
, and1
map toMale
. Values ofFemale
,F
,Girl
,G
, and2
map toFemale
.
If any of these values are missing or can't be interpreted, an exception is thrown.
- have_measure_class_for(%criteria)
-
Finds the measurement class name for %criteria as described above, and tries to load the measurement class.
Returns the name of the measure class if successful, and
undef
if the class cannot be loaded. - measure_class_for(%criteria)
-
Finds the measurement class name for %criteria as described above, and loads the measurement class. An exception is thrown if the class cannot be loaded.
Returns a handle for the measurement class, through which its methods may be called.
This method can be called directly, or may be called by delegation from "measure_class_for" in Medical::Growth, if the
system
element of %criteria specifiesNHANES_2000
.
USING NHANES_2000 MEASUREMENT CLASSES
Once you have a measurement class in hand, you will typically want to do one of two things with it:
- Compare a particular child's growth measurements with the NHANES norms.
-
You can convert growth measurements to percentiles or Z scores by calling pct_for_value or z_for_value, respectively.
- Reconstruct a growth curve
-
You can find out what specific growth measurements correspond to a given percentile or Z score by calling value_for_pct or value_for_z, respectively.
EXPORT
None.
SEE ALSO
http://www.cdc.gov/growthcharts
Moo::Lax (for developers) Medical::Growth::NHANES_2000 is implemented using Moo::Lax and friends to avoid the need for compiled dependencies; if your code is already using Moose, it should play nicely.
DIAGNOSTICS
Any message produced by an included package, as well as
- Need to specify measure, age_group, and sex (F)
-
One of the required criteria for identifying a measurement class is missing.
- Don't understand measure spec (F)
-
The value of the
measure
element in %criteria wasn't in a known format. - Don't understand measure name (F)
-
The growth measurement part of the
measure
element in %criteria wasn't a known growth measurement. - Don't understand norm name (F)
-
The norm (basis for comparison) part of the
measure
element in %criteria wasn't a known norm. - Don't understand age group (F)
-
The value of the
age_group
element in %criteria wasn't a known growth measurement. - Don't understand sex (F)
-
The value of the
age_group
element in %criteria wasn't a known growth measurement.
BUGS AND CAVEATS
Are there, for certain, but have yet to be cataloged.
VERSION
version 1.00
AUTHOR
Charles Bailey <cbail@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2012-2014 Charles Bailey.
This software may be used under the terms of the Artistic License or the GNU General Public License, as the user prefers.
ACKNOWLEDGMENT
The code incorporated into this package was originally written with United States federal funding as part of research work done by the author at the Children's Hospital of Philadelphia.