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.
#> 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

bmi_cat_2011_2012 <- rec_with_table(
cchs2011_2012_p,c(
"HWTGHTM",
"HWTGWTK",
"HWTGBMI_der",
"HWTGBMI_der_cat4"
)
)
#> No variable_details detected.
#> 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)