nsfg: Read and recode National Survey of Family Growth (NSFG) data

View source: R/nsfg.R

nsfgR Documentation

Read and recode National Survey of Family Growth (NSFG) data

Description

Read and recode National Survey of Family Growth (NSFG) data

Usage

nsfg(years, nonbio = TRUE, keep_source = FALSE, progress = TRUE)

Arguments

years

vector: a numeric vector containing the starting year of NSFG waves to include (2002, 2006, 2011, 2013, 2015, 2017, 2022)

nonbio

boolean: should non-biological children be included

keep_source

boolean: keep the raw variables used to construct want_cf and famstat

progress

boolean: display a progress bar

Details

The U.S. Centers for Disease Control National Survey of Family Growth (NSFG) regularly collects fertility and other health information from a population-representative sample of adults in the United States. Between 1973 and 2002, the NSFG was conducted periodically. Starting in 2006, the NSFG transitioned to continuous data collection, releasing data in multi-year waves (e.g., 2006-2010, 2011-2013). The nsfg() function reads the raw data from CDC's website, extracts and recodes selected variables useful for studying childfree adults and other family statuses, then returns an unweighted data frame.

Sampling weights

The NSFG is collected using a complex survey design. The survey package can be used to perform analyses that take these design features into account, and make it possible to obtain population-representative estimates. In most cases, a svydesign object for a single wave can be created using survey::svydesign(data = data, ids = ~cluster, strata = ~strata, weights = ~weight, nest = TRUE). Additional information about analyzing DHS data using weights is available here.

Non-biological children

When nonbio == TRUE (default), non-biological children (e.g., adopted children, foster children, etc.) are treated the same as biological children when determining a respondent's family status. This matches the approach described by the ABC Framework (Neal & Neal, 2024), and should generally be used.However, non-biological children can be ignored by setting nonbio = FALSE, which may be useful when comparing NSFG estimates to estimates derived from other data where information about non-biological children is not available.

Additional notes

  • Starting in 2006, "hispanic" was a response option for race, however "hispanic" is not a racial category, but an ethnicity. When a respondent chose this option, their actual race is unknown.

  • Partnership status only describes a respondent's status with respect to an opposite-sex partner. Information about current or former same-sex partnerships is not available.

  • The NSFG manual explains that "sample sizes for a single year are too small to provide estimates with adequate levels of precision," and therefore recommends avoiding analysis of data from single years. Instead, these data are designed to be analyzed by wave.

Value

A data frame containing variables described in the codebook available using vignette("codebooks")

References

NSFG Classification: Neal, J. W. and Neal, Z. P. (2025). Tracking types of non-parents in the United States. Journal of Marriage and Family. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1111/jomf.13097")}

ABC Framework: Neal, Z. P. and Neal, J. W. (2024). A framework for studying adults who neither have nor want children. The Family Journal, 32, 121-130. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1177/10664807231198869")}

Examples


unweighted <- nsfg(years = 2017)  #Unweighted data
table(unweighted$famstat) / nrow(unweighted)  #Fraction of respondents with each family status


childfree documentation built on April 3, 2025, 6:15 p.m.