Health visualizations
# Load home_visit_df if not in environment
if (!("health_df" %in% ls())) {
targets::tar_load(health_df, store="../_targets")
}
Feeding
xtabs(formula = ~ age_group + feeding_breastfeed, data = health_df)
## feeding_breastfeed
## age_group donotknow no refused yes
## 12mo 0 13 0 260
## 18mo 1 13 0 268
## 24mo 0 10 1 212
health_df %>%
dplyr::select(child_sex, feeding_solidfood_age) |>
dplyr::filter(feeding_solidfood_age < 12) |>
ggplot() +
aes(x = feeding_solidfood_age, color = child_sex, fill = child_sex) +
geom_histogram(bins = 14) +
theme(legend.title = element_blank())
Clearly, there are some impossible values here.
health_df |>
dplyr::select(participant_id,
feeding_solidfood_age) |>
dplyr::filter(feeding_solidfood_age > 12 | feeding_solidfood_age < 3) %>%
knitr::kable(format = 'html')
participant_id | feeding_solidfood_age |
---|---|
a4T7C3F1A | 990 |
i9P3B3K2A | 995 |
e5M1S1R3A | 0 |
a9M6Q1C1A | 999 |
A preliminary look at feeding_comments_feeding
shows that there are some names mentioned.
We should consider flagging these in the QA process.
Sleeping position
These data only focus on child_sleeping_position
.
Other sleeping data are in the screening questionnaire.
sleeping_pos <- health_df |>
dplyr::select(child_sex, age_group,
child_sleeping_position) |>
dplyr::filter(!is.na(child_sleeping_position))
xtabs(formula = ~ child_sleeping_position + age_group, data = sleeping_pos)
## age_group
## child_sleeping_position 12mo 18mo 24mo
## back 252 269 209
## changed 4 3 2
## donotknow 0 1 0
## other 4 1 1
## refused 0 0 1
## side 3 2 5
## sitting 1 0 1
## stomach_down 1 1 1
## stomach_side 8 5 3
Smoking/drinking
smoking_drinking <- health_df |>
dplyr::select(age_group,
child_sex,
contains("smoking"),
contains("drinking")
)
xtabs(formula = ~ pregnant_smoking + pregnant_drinking, smoking_drinking)
## pregnant_drinking
## pregnant_smoking donotknow no refused yes
## donotknow 2 1 0 0
## no 0 631 1 136
## refused 0 0 1 0
## yes 0 1 0 2
xtabs(formula = ~ smoking_house + smoking_car, smoking_drinking)
## smoking_car
## smoking_house donotknow no refused yes
## donotknow 1 1 0 0
## no 3 753 0 3
## refused 0 3 1 0
## yes 0 10 0 3
smoking_drinking |>
dplyr::select(comments_smoking) |>
dplyr::filter(!is.na(comments_smoking)) |>
knitr::kable(format = 'html')
comments_smoking |
---|
D8 not asked/ answered, as questionnaire did not have this question included. |
Was not in the paper questionnaire |
Family does not have a car. |
Family doesn’t have a car |
Vape with THC and THC so!etimes smoke when he’s asleep |
(Changed answer for D1 from "refused" to "no" during QA. Experimenter had accidentally pressed wrong answer) |
Mom stated dad smokes marijuana occasionally outside of house |
Dad vapes in the house |
(QA Note: D8 was not answered during the home visit. Changed answer from "No" to "Don’t Know" as a result) |
Only smoking is at grandma’s house. Grandma smokes. |
Smoked half an FT (?) every other day until she found out about pregnancy at 5 weeks; grandmother smokes inside her bedroom |
maybe husband vapes in the house |
Her husband smokes in the car. |
Father vapes in the house, non-tobacco |
Child’s birth mother did not smoke cigarettes while she was pregnant with child. |
Dad smokes but not in the house |
uncle smokes outside |
Husband smokes occasionally |
smoking stopped after pregnancy |
Dad vapes |
Vaping in the home/car |
Charlotte was adopted. Asked if she knew if birth mom smoked when pregnant, and she said probably. |
Vape |
With her, no. Dad smokes, but different househokld. |
Vapes inside the house |
Husband smokes outside of the house. |
"Smoked a little pot" when pregnant |
QA: Answered by non-target mom |
Mom does not smoke cigarettes, only marijuana; mom would smoke every other day or so during pregnancy |
smoking_drinking |>
dplyr::select(comments_drinking) |>
dplyr::filter(!is.na(comments_drinking)) |>
knitr::kable(format = 'html')
comments_drinking |
---|
8 months drank 1 glass of wine |
Only drank before knowing she was pregnant |
Drank before knowing she was pregnant. |
E4- Indicated she drank one glass of wine every two weeks |
Sip of champagne one |
Mom said she stopped drinking when she realized she was pregnant. |
8 months drank 1 glass of wine |
Had one drink when unaware of pregnancy and night before before water broke |
glass of champagne during new years |
Mom drank prior to finding out she was pregnant |
Some events had up to 4oz nonliquor drinks - rule for herself, not more than that |
One glass of wine early in pregnancy |
A sip here and there to try, no full drinks while pregnant |
Entire pregnancy is maybe around 5 drinks total |
Drank one Margarita when 3 weeks pregnant |
Had half an alcoholic beverage during second half of second trimester |
Had a drink before she found out she was pregnant. Towards the end of the pregnancy at a birthday party had less than 1 drink. |
Mom only drank one time during pregnancy (before mom knew she was pregnant) at a wine excursion |
Had about five drinks total during pregnancy |
She had a few sips of wine throughout the entire pregnancy. Maybe twice total during the pregnancy. |
Only 3 glasses of wine in the total pregnancy |
Occasionally had one drink during third trimester |
Mom is unsure if child’s birth mom drank during pregnancy. |
had wine before she found out pregnant |
Couple sips of drink |
2 drinks total during first trimester |
Christmas and new years - had a drink if that |
Drank alocoholic beverages prior to knowing she was pregnant. |
once a month a glass of wine |
Mom drank about one drink per week on average (would never be three per week) in second 3 months of pregnancy; closer to two drinks per week on average in third 3 months |
Not since knew pregnant |
8 weeks in found out |
Drank during first month of pregnancy |
only had on average two drinks a week during the first month of the pregnancy |
Maybe a sip of wine one time |
Occassional sips of wine, but never a full drink |
Very very occasional |
Maybe one drink during pregnancy |
Mom had two glasses of wine during her last trimester but it wasn’t an average week |
had the occasional glass of red wine |
E2. Parent had 2 drinks in the first 3 months of pregnancy total (not weekly) prior to finding out she was pregnant |
Only a glass of red wine |
2 total drinks during pregnancy |
Only sips of wine, very infrequently. |
QA: Mom indicated she had drinks before knowing she pregnant. When asked how many drinks during first 3 months, mom said "0." She said it wasn’t even within first 3 months, she found out she was pregnant very early. |
before knowing pregnant |
had sip of champagne at wedding |
Charlotte is adopted. Mom did not know if birth mom drank during pregnancy. |
Once before she knew she was pregnant |
Mom indicated she had sip of husbands wine at a party, but not much |
She drank before she knew she was pregnant. Had one sip of wine on her birthday when she was about 40 weeks. |
Mom mentioned that she sipped on a few drinks in second and third trimesters. |
Just one drink ever during pregnancy in 3rd trimester. Had some on her birthdya which was in first month of being pregnant. |
During the first 3 weeks before she knew she was pregnant |
Took a sip whisky in third trimester |
only during 3rd trimester |
Drank before she knew she was pregnant |
Answered by mom who carried the child she did not participate in natural play |
One or two before found out about pregnancy |
Had 1 glass of wine at 9.5 months pregnant. |
Only had one drink |
Only drank before she found out she was pregnant. |
1 glass of wine 1 month before bith and had a drink before she knew she pregnant |
A few drinks every week |
only had one drink before she knew she was pregnant |
Half glasses of wine 5x through pregnancy |
QA: Answered by non-target mom |
First 5 weeks, unaware of pregnancy |
Drank the first five weeks when she did not know about her pregnancy |
Just during the last weeks of her maybe one glass of wine |
Had a drink before knowing she was pregnant |
Patient Health Questionnaire (PHQ-4)
phq4 <- health_df |>
dplyr::select(child_sex, age_group, contains("phq4_"))
names(phq4) <- gsub(pattern = "phq4_",
replacement = "",
names(phq4))
phq4 |>
tidyr::pivot_longer(!c('child_sex', 'age_group'),
names_to = "question",
values_to = "response") |>
dplyr::filter(!is.na(response)) |>
dplyr::mutate(response = factor(response,
c("notatall",
"severaldays",
"morethanhalf",
"nearly")),
ordered = TRUE) |>
ggplot() +
aes(x = response, fill = child_sex) +
geom_bar() +
facet_grid(cols = vars(question), rows = vars(age_group)) +
scale_x_discrete(guide = guide_axis(angle = 90)) +
xlab("") +
theme(legend.position = "bottom", legend.title = element_blank())
Child health
Overall rating
child_health_rating <- health_df |>
dplyr::select(child_sex, age_group, child_health) |>
dplyr::filter(!is.na(child_health)) |>
dplyr::mutate(child_health = factor(child_health,
c("poor",
"fair",
"good",
"verygood",
"excellent",
"donotknow",
"refused"),
ordered = TRUE))
xtabs(formula = ~ child_health + age_group, data = child_health_rating)
## age_group
## child_health 12mo 18mo 24mo
## poor 0 0 0
## fair 2 1 1
## good 12 16 14
## verygood 69 65 57
## excellent 190 199 150
## donotknow 0 1 0
## refused 0 0 1
Recent vaccination
recent_vax <- health_df |>
dplyr::select(child_sex, age_group, child_vaccination) |>
dplyr::filter(!is.na(child_vaccination))
xtabs(formula = ~ child_vaccination + age_group, data = recent_vax)
## age_group
## child_vaccination 12mo 18mo 24mo
## donotknow 0 2 4
## no 154 197 173
## yes 119 83 46
Seen medical specialist
seen_specialist <- health_df |>
dplyr::select(child_sex, age_group, child_medical_specialist) |>
dplyr::filter(!is.na(child_medical_specialist))
xtabs(formula = ~ child_medical_specialist + age_group, data = seen_specialist)
## age_group
## child_medical_specialist 12mo 18mo 24mo
## donotknow 0 1 2
## no 138 125 100
## refused 0 0 1
## yes 135 156 120
Manual inspection shows some possible identifying information (names) in the comments.
Illnesses and allergies
illness_allergy <- health_df |>
dplyr::select(child_sex, age_group, contains("illness_"))
names(illness_allergy) <- gsub(pattern = "illness_",
replacement = "",
names(illness_allergy))
illness_allergy |>
tidyr::pivot_longer(!c('child_sex', 'age_group'),
names_to = "type",
values_to = "response") |>
dplyr::filter(!is.na(response)) |>
dplyr::mutate(response = factor(response,
c("no", "yes", "donotknow", "refused"))) |>
ggplot() +
aes(x = response, fill = child_sex) +
geom_bar() +
facet_grid(cols = vars(type), rows = vars(age_group)) +
scale_x_discrete(guide = guide_axis(angle = 90)) +
xlab("") +
theme(legend.position = "bottom", legend.title = element_blank())