This function creates a categorical derived variable (HWTGBMI_der_cat4) that categorizes derived BMI (HWTGBMI_der).

bmi_fun_cat(HWTGBMI_der)

Arguments

HWTGBMI_der

derived variable that calculates numeric value for BMI. See bmi_fun for documentation on how variable was derived.

Value

value for BMI categories in the HWTGBMI_der_cat4 variable.

Details

The categories were based on international standards and are divided into four categories: underweight for BMI < 18.5 (1), normal weight for BMI between 18.5 to 25 (2), overweight for BMI between 25 to 30 (3), and obese for BMI over 30 (4).

HWTGBMI_der_cat4 uses the derived variable HWTGBMI_der. HWTGBMI_der uses height and weight that have been transformed by cchsflow. In order to categorize BMI across CCHS cycles, height and weight variables must be transformed and harmonized.

Examples

 
# Using bmi_fun_cat() to categorize BMI across CCHS cycles
# bmi_fun_cat() is specified in variable_details.csv along with the 
# CCHS variables and cycles included.

# To transform HWTGBMI_der_cat4 across all cycles, use rec_with_table() for 
# each CCHS cycle.
# Since HWTGBMI_der is also a derived variable, you will have to specify 
# the variables that are derived from it.

library(cchsflow)

bmi_cat_2009_2010 <- rec_with_table(
  cchs2009_2010_p, c(
    "HWTGHTM",
    "HWTGWTK",
    "HWTGBMI_der",
    "HWTGBMI_der_cat4"
  )
)
#> No variable_details detected.
#>               Loading cchsflow variable_details
#> Using the passed data variable name as database_name
#> NOTE for HWTGHTM: Height is a reported in meters from 2005 CCHS onwards
#> Error in create_label_list_element(variable_rows) HWTGBMI_der_cat4 does not contain all identical units variable cant change unit type for different values

head(bmi_cat_2009_2010)
#> Error in head(bmi_cat_2009_2010) object 'bmi_cat_2009_2010' not found

bmi_cat_2011_2012 <- rec_with_table(
  cchs2011_2012_p,c(
    "HWTGHTM",
    "HWTGWTK",
    "HWTGBMI_der",
    "HWTGBMI_der_cat4"
  )
)
#> No variable_details detected.
#>               Loading cchsflow variable_details
#> Using the passed data variable name as database_name
#> NOTE for HWTGHTM: Height is a reported in meters from 2005 CCHS onwards
#> Error in create_label_list_element(variable_rows) HWTGBMI_der_cat4 does not contain all identical units variable cant change unit type for different values

tail(bmi_cat_2011_2012)
#> Error in tail(bmi_cat_2011_2012) object 'bmi_cat_2011_2012' not found

combined_bmi_cat <- suppressWarnings(merge_rec_data
(bmi_cat_2009_2010,bmi_cat_2011_2012))
#> Error in list2(...) object 'bmi_cat_2009_2010' not found

head(combined_bmi_cat)
#> Error in head(combined_bmi_cat) object 'combined_bmi_cat' not found
tail(combined_bmi_cat)
#> Error in tail(combined_bmi_cat) object 'combined_bmi_cat' not found