Skip to content

Latest commit

 

History

History
215 lines (147 loc) · 8.11 KB

README.mkdn

File metadata and controls

215 lines (147 loc) · 8.11 KB

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 measurefornorm, where measure is the measurement (one of Weight, Height, Length, Stature, Head Circumference, or BMI) and norm is the norm (one of Age, Height, or Length). Spaces may be replaced with underscores, and for may be replaced with by, 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, or OFC, and Norm can have the additional values Hgt, Ht, or Len.

      Finally, any of Height, Length, or Stature are mapped to Length if an infant age_group is specified (see below), or to Height 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, and Neonate are taken as Infant, and values of Child, School-age, and Adolescent are taken as Child.

      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 to Child.

      The key age may be used instead of age_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, and 1 map to Male. Values of Female, F, Girl, G, and 2 map to Female.

    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 specifies NHANES_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

Medical::Growth

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 [email protected]

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.