pvalue.func <- function(x, ...) {
# Construct vectors of data y, and groups (strata) g
y <- unlist(x)
g <- factor(rep(1:length(x), times=sapply(x, length)))
if (is.numeric(y)) {
test <- aov(y ~ g)
p<-summary(test)[[1]][1,5]
} else {
# For categorical variables, perform a chi-squared test of independence
p <- chisq.test(table(y, g))$p.value
}
# Format the p-value, using an HTML entity for the less-than sign.
# The initial empty string places the output on the line below the variable label.
c("", sub("<", "<", format.pval(p, digits=3, eps=0.001)))
}
merged.df<-readr::read_csv("/Volumes/IGNITE_Admin/R_IGNITE/BASELINE_merged.csv")
merged.df$race.factor<-if_else(str_detect(merged.df$screen_race.factor, "White"), "White", "")
merged.df$race.factor<-if_else(str_detect(merged.df$screen_race.factor, "Black"), "Black", merged.df$race.factor)
merged.df$race.factor<-if_else(merged.df$race.factor=="", "Other", merged.df$race.factor)
merged.df$race.factor<-factor(merged.df$race.factor, levels=c("White", "Black", "Other"))
merged.df$sittime_total<-merged.df$sittime_weekend_total+merged.df$sittime_weekday_total_min
merged.df$screen_mod_confirm.factor<-if_else(is.na(merged.df$screen_mod_confirm.factor), "No", as.character(merged.df$screen_mod_confirm.factor))
table1::table1(~screen_gender.factor+race.factor+season+dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+sittime_total|screen_site.factor+screen_mod_confirm.factor ,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
Kansas |
Northeastern |
Pitt |
|||||
|---|---|---|---|---|---|---|---|
| No (N=202) |
Yes (N=12) |
No (N=209) |
Yes (N=6) |
No (N=215) |
Yes (N=4) |
P-value | |
| screen_gender.factor | |||||||
| Female | 146 (72.3%) | 9 (75.0%) | 144 (68.9%) | 4 (66.7%) | 154 (71.6%) | 4 (100%) | 0.787 |
| Male | 56 (27.7%) | 3 (25.0%) | 65 (31.1%) | 2 (33.3%) | 61 (28.4%) | 0 (0%) | |
| race.factor | |||||||
| White | 170 (84.2%) | 10 (83.3%) | 148 (70.8%) | 4 (66.7%) | 158 (73.5%) | 1 (25.0%) | <0.001 |
| Black | 23 (11.4%) | 1 (8.3%) | 42 (20.1%) | 2 (33.3%) | 51 (23.7%) | 3 (75.0%) | |
| Other | 9 (4.5%) | 1 (8.3%) | 19 (9.1%) | 0 (0%) | 6 (2.8%) | 0 (0%) | |
| season | |||||||
| Fall | 65 (32.2%) | 4 (33.3%) | 57 (27.3%) | 1 (16.7%) | 71 (33.0%) | 2 (50.0%) | 0.913 |
| Spring | 44 (21.8%) | 2 (16.7%) | 40 (19.1%) | 1 (16.7%) | 49 (22.8%) | 0 (0%) | |
| Summer | 51 (25.2%) | 4 (33.3%) | 42 (20.1%) | 2 (33.3%) | 41 (19.1%) | 0 (0%) | |
| Winter | 37 (18.3%) | 2 (16.7%) | 46 (22.0%) | 1 (16.7%) | 47 (21.9%) | 1 (25.0%) | |
| Missing | 5 (2.5%) | 0 (0%) | 24 (11.5%) | 1 (16.7%) | 7 (3.3%) | 1 (25.0%) | |
| dur_day_total_MODVIG_min_pla | |||||||
| Mean (SD) | 51.2 (29.3) | 61.6 (38.1) | 50.1 (30.5) | 50.4 (12.2) | 46.5 (28.9) | 51.3 (20.9) | 0.436 |
| Median [Min, Max] | 45.3 [4.90, 166] | 51.0 [23.8, 146] | 43.6 [3.67, 188] | 56.7 [36.5, 63.5] | 38.4 [3.01, 182] | 43.5 [35.5, 75.1] | |
| Missing | 5 (2.5%) | 0 (0%) | 24 (11.5%) | 1 (16.7%) | 7 (3.3%) | 1 (25.0%) | |
| vo2sum_peak_ml | |||||||
| Mean (SD) | 22.2 (5.24) | 24.6 (3.83) | 22.2 (5.04) | 23.4 (2.45) | 20.6 (4.81) | 20.0 (5.47) | 0.00133 |
| Median [Min, Max] | 21.7 [12.1, 39.5] | 24.7 [18.6, 32.0] | 22.0 [11.5, 34.1] | 23.8 [18.7, 25.9] | 20.0 [10.1, 38.1] | 19.3 [14.5, 26.8] | |
| sittime_total | |||||||
| Mean (SD) | 627 (254) | 586 (231) | 683 (289) | 801 (309) | 688 (333) | 667 (134) | 0.197 |
| Median [Min, Max] | 581 [107, 1540] | 565 [213, 978] | 641 [166, 1640] | 675 [548, 1290] | 615 [184, 3170] | 641 [536, 851] | |
| Missing | 0 (0%) | 0 (0%) | 0 (0%) | 1 (16.7%) | 0 (0%) | 0 (0%) | |
table1::table1(~screen_mod_confirm.factor+race.factor+season+dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+sittime_total+dur_day_total_IN_min_pla+bmi|rand_treat.factor ,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
| Group 1: 150 mins of aerobic exercise (N=215) |
Group 2: 225 mins of aerobic exercise (N=215) |
Group 3: Stretch and Tone (N=209) |
P-value | |
|---|---|---|---|---|
| screen_mod_confirm.factor | ||||
| No | 207 (96.3%) | 208 (96.7%) | 202 (96.7%) | 0.962 |
| Yes | 8 (3.7%) | 7 (3.3%) | 7 (3.3%) | |
| race.factor | ||||
| White | 159 (74.0%) | 163 (75.8%) | 161 (77.0%) | 0.956 |
| Black | 43 (20.0%) | 41 (19.1%) | 38 (18.2%) | |
| Other | 13 (6.0%) | 11 (5.1%) | 10 (4.8%) | |
| season | ||||
| Fall | 68 (31.6%) | 70 (32.6%) | 59 (28.2%) | 0.774 |
| Spring | 41 (19.1%) | 43 (20.0%) | 52 (24.9%) | |
| Summer | 46 (21.4%) | 46 (21.4%) | 45 (21.5%) | |
| Winter | 48 (22.3%) | 40 (18.6%) | 43 (20.6%) | |
| Missing | 12 (5.6%) | 16 (7.4%) | 10 (4.8%) | |
| dur_day_total_MODVIG_min_pla | ||||
| Mean (SD) | 52.5 (31.4) | 50.1 (27.9) | 45.5 (29.0) | 0.0558 |
| Median [Min, Max] | 48.2 [3.67, 188] | 42.8 [4.90, 129] | 37.6 [3.01, 166] | |
| Missing | 12 (5.6%) | 16 (7.4%) | 10 (4.8%) | |
| vo2sum_peak_ml | ||||
| Mean (SD) | 21.7 (4.75) | 21.8 (5.24) | 21.5 (5.14) | 0.833 |
| Median [Min, Max] | 21.4 [12.6, 35.2] | 21.4 [11.5, 38.1] | 20.9 [10.1, 39.5] | |
| sittime_total | ||||
| Mean (SD) | 683 (257) | 658 (299) | 665 (324) | 0.669 |
| Median [Min, Max] | 660 [184, 1610] | 611 [107, 2390] | 600 [201, 3170] | |
| Missing | 0 (0%) | 0 (0%) | 1 (0.5%) | |
| dur_day_total_IN_min_pla | ||||
| Mean (SD) | 823 (104) | 825 (102) | 819 (99.4) | 0.84 |
| Median [Min, Max] | 816 [580, 1140] | 815 [559, 1120] | 822 [535, 1070] | |
| Missing | 12 (5.6%) | 16 (7.4%) | 10 (4.8%) | |
| bmi | ||||
| Mean (SD) | 29.9 (5.86) | 29.8 (6.00) | 29.6 (5.40) | 0.873 |
| Median [Min, Max] | 28.8 [19.1, 50.9] | 29.2 [18.0, 49.5] | 28.9 [18.8, 44.5] | |
| Missing | 0 (0%) | 1 (0.5%) | 0 (0%) |
table1::table1(~screen_gender.factor+race.factor+screen_race_la_his.factor+vo2sum_peak_ml+NValidays4_3wk_1we+dur_day_total_MODVIG_min_pla+dur_day_total_IN_min_pla+sittime_total|rand_treat.factor +screen_mod_confirm.factor,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
Group 1: 150 mins of aerobic exercise |
Group 2: 225 mins of aerobic exercise |
Group 3: Stretch and Tone |
|||||
|---|---|---|---|---|---|---|---|
| No (N=207) |
Yes (N=8) |
No (N=208) |
Yes (N=7) |
No (N=202) |
Yes (N=7) |
P-value | |
| screen_gender.factor | |||||||
| Female | 145 (70.0%) | 7 (87.5%) | 146 (70.2%) | 6 (85.7%) | 146 (72.3%) | 4 (57.1%) | 0.736 |
| Male | 62 (30.0%) | 1 (12.5%) | 62 (29.8%) | 1 (14.3%) | 56 (27.7%) | 3 (42.9%) | |
| race.factor | |||||||
| White | 154 (74.4%) | 5 (62.5%) | 159 (76.4%) | 4 (57.1%) | 155 (76.7%) | 6 (85.7%) | 0.902 |
| Black | 41 (19.8%) | 2 (25.0%) | 38 (18.3%) | 3 (42.9%) | 37 (18.3%) | 1 (14.3%) | |
| Other | 12 (5.8%) | 1 (12.5%) | 11 (5.3%) | 0 (0%) | 10 (5.0%) | 0 (0%) | |
| screen_race_la_his.factor | |||||||
| No | 199 (96.1%) | 7 (87.5%) | 202 (97.1%) | 7 (100%) | 194 (96.0%) | 6 (85.7%) | 0.469 |
| Yes | 8 (3.9%) | 1 (12.5%) | 6 (2.9%) | 0 (0%) | 8 (4.0%) | 1 (14.3%) | |
| vo2sum_peak_ml | |||||||
| Mean (SD) | 21.7 (4.82) | 23.5 (1.58) | 21.7 (5.27) | 22.7 (4.57) | 21.4 (5.11) | 24.0 (5.71) | 0.639 |
| Median [Min, Max] | 21.2 [12.6, 35.2] | 23.8 [20.6, 25.5] | 21.4 [11.5, 38.1] | 23.7 [16.8, 29.5] | 20.8 [10.1, 39.5] | 25.1 [14.5, 32.0] | |
| NValidays4_3wk_1we | |||||||
| Not Valid | 2 (1.0%) | 0 (0%) | 5 (2.4%) | 0 (0%) | 4 (2.0%) | 0 (0%) | 0.877 |
| Valid | 194 (93.7%) | 7 (87.5%) | 187 (89.9%) | 7 (100%) | 189 (93.6%) | 6 (85.7%) | |
| Missing | 11 (5.3%) | 1 (12.5%) | 16 (7.7%) | 0 (0%) | 9 (4.5%) | 1 (14.3%) | |
| dur_day_total_MODVIG_min_pla | |||||||
| Mean (SD) | 52.1 (31.0) | 64.0 (42.7) | 50.3 (28.2) | 45.0 (17.4) | 45.0 (28.9) | 63.7 (26.9) | 0.0931 |
| Median [Min, Max] | 48.2 [3.67, 188] | 56.0 [23.8, 146] | 43.6 [4.90, 129] | 36.5 [28.4, 75.1] | 36.8 [3.01, 166] | 54.1 [38.3, 114] | |
| Missing | 11 (5.3%) | 1 (12.5%) | 16 (7.7%) | 0 (0%) | 9 (4.5%) | 1 (14.3%) | |
| dur_day_total_IN_min_pla | |||||||
| Mean (SD) | 823 (105) | 814 (103) | 823 (102) | 884 (99.5) | 822 (98.3) | 716 (85.3) | 0.103 |
| Median [Min, Max] | 816 [580, 1140] | 868 [664, 916] | 813 [559, 1120] | 881 [726, 1060] | 825 [535, 1070] | 736 [581, 829] | |
| Missing | 11 (5.3%) | 1 (12.5%) | 16 (7.7%) | 0 (0%) | 9 (4.5%) | 1 (14.3%) | |
| sittime_total | |||||||
| Mean (SD) | 684 (256) | 636 (310) | 654 (302) | 768 (170) | 669 (327) | 541 (186) | 0.68 |
| Median [Min, Max] | 660 [184, 1610] | 589 [338, 1290] | 611 [107, 2390] | 851 [548, 978] | 606 [201, 3170] | 557 [213, 729] | |
| Missing | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 1 (14.3%) | |
table1::table1(~screen_race_la_his.factor+screen_mod_confirm.factor+dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+sittime_total|rand_treat.factor+screen_gender.factor ,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
Group 1: 150 mins of aerobic exercise |
Group 2: 225 mins of aerobic exercise |
Group 3: Stretch and Tone |
|||||
|---|---|---|---|---|---|---|---|
| Female (N=152) |
Male (N=63) |
Female (N=152) |
Male (N=63) |
Female (N=150) |
Male (N=59) |
P-value | |
| screen_race_la_his.factor | |||||||
| No | 145 (95.4%) | 61 (96.8%) | 149 (98.0%) | 60 (95.2%) | 145 (96.7%) | 55 (93.2%) | 0.632 |
| Yes | 7 (4.6%) | 2 (3.2%) | 3 (2.0%) | 3 (4.8%) | 5 (3.3%) | 4 (6.8%) | |
| screen_mod_confirm.factor | |||||||
| No | 145 (95.4%) | 62 (98.4%) | 146 (96.1%) | 62 (98.4%) | 146 (97.3%) | 56 (94.9%) | 0.732 |
| Yes | 7 (4.6%) | 1 (1.6%) | 6 (3.9%) | 1 (1.6%) | 4 (2.7%) | 3 (5.1%) | |
| dur_day_total_MODVIG_min_pla | |||||||
| Mean (SD) | 52.3 (30.5) | 53.1 (33.7) | 50.2 (27.6) | 49.7 (28.7) | 43.3 (26.9) | 51.4 (33.5) | 0.118 |
| Median [Min, Max] | 48.4 [6.89, 188] | 47.1 [3.67, 182] | 43.6 [4.90, 123] | 41.0 [11.3, 129] | 35.8 [3.01, 120] | 40.2 [5.65, 166] | |
| Missing | 9 (5.9%) | 3 (4.8%) | 16 (10.5%) | 0 (0%) | 6 (4.0%) | 4 (6.8%) | |
| vo2sum_peak_ml | |||||||
| Mean (SD) | 20.8 (4.02) | 24.0 (5.58) | 20.6 (4.69) | 24.7 (5.37) | 20.4 (4.58) | 24.2 (5.51) | <0.001 |
| Median [Min, Max] | 20.6 [12.6, 32.5] | 23.9 [13.9, 35.2] | 20.2 [11.5, 33.0] | 24.0 [12.2, 38.1] | 20.0 [10.1, 34.1] | 25.4 [11.3, 39.5] | |
| sittime_total | |||||||
| Mean (SD) | 673 (255) | 705 (264) | 657 (302) | 659 (295) | 634 (272) | 746 (423) | 0.192 |
| Median [Min, Max] | 642 [184, 1610] | 669 [230, 1230] | 613 [107, 2390] | 581 [192, 1570] | 581 [201, 1430] | 625 [213, 3170] | |
| Missing | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 1 (1.7%) | |
table1::table1(~screen_gender.factor+screen_race_la_his.factor+screen_mod_confirm.factor+dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+sittime_total|rand_treat.factor+race.factor ,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
Group 1: 150 mins of aerobic exercise |
Group 2: 225 mins of aerobic exercise |
Group 3: Stretch and Tone |
||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| White (N=159) |
Black (N=43) |
Other (N=13) |
White (N=163) |
Black (N=41) |
Other (N=11) |
White (N=161) |
Black (N=38) |
Other (N=10) |
P-value | |
| screen_gender.factor | ||||||||||
| Female | 105 (66.0%) | 37 (86.0%) | 10 (76.9%) | 113 (69.3%) | 33 (80.5%) | 6 (54.5%) | 109 (67.7%) | 35 (92.1%) | 6 (60.0%) | 0.0104 |
| Male | 54 (34.0%) | 6 (14.0%) | 3 (23.1%) | 50 (30.7%) | 8 (19.5%) | 5 (45.5%) | 52 (32.3%) | 3 (7.9%) | 4 (40.0%) | |
| screen_race_la_his.factor | ||||||||||
| No | 155 (97.5%) | 43 (100%) | 8 (61.5%) | 159 (97.5%) | 41 (100%) | 9 (81.8%) | 155 (96.3%) | 37 (97.4%) | 8 (80.0%) | <0.001 |
| Yes | 4 (2.5%) | 0 (0%) | 5 (38.5%) | 4 (2.5%) | 0 (0%) | 2 (18.2%) | 6 (3.7%) | 1 (2.6%) | 2 (20.0%) | |
| screen_mod_confirm.factor | ||||||||||
| No | 154 (96.9%) | 41 (95.3%) | 12 (92.3%) | 159 (97.5%) | 38 (92.7%) | 11 (100%) | 155 (96.3%) | 37 (97.4%) | 10 (100%) | 0.845 |
| Yes | 5 (3.1%) | 2 (4.7%) | 1 (7.7%) | 4 (2.5%) | 3 (7.3%) | 0 (0%) | 6 (3.7%) | 1 (2.6%) | 0 (0%) | |
| dur_day_total_MODVIG_min_pla | ||||||||||
| Mean (SD) | 52.3 (30.9) | 52.9 (34.5) | 53.7 (30.0) | 52.3 (27.9) | 36.9 (25.1) | 64.0 (23.8) | 47.9 (29.9) | 31.7 (16.7) | 59.6 (36.2) | <0.001 |
| Median [Min, Max] | 49.0 [3.67, 188] | 44.3 [8.69, 133] | 47.1 [14.2, 126] | 47.3 [7.21, 129] | 33.2 [4.90, 117] | 64.1 [33.8, 101] | 39.9 [5.65, 166] | 30.0 [3.01, 78.4] | 51.0 [27.4, 143] | |
| Missing | 8 (5.0%) | 4 (9.3%) | 0 (0%) | 10 (6.1%) | 5 (12.2%) | 1 (9.1%) | 5 (3.1%) | 3 (7.9%) | 2 (20.0%) | |
| vo2sum_peak_ml | ||||||||||
| Mean (SD) | 22.5 (4.55) | 19.0 (4.80) | 20.8 (3.71) | 22.7 (4.93) | 17.4 (4.12) | 24.6 (5.13) | 22.7 (4.85) | 16.7 (3.01) | 21.0 (5.78) | <0.001 |
| Median [Min, Max] | 22.3 [13.4, 35.2] | 18.0 [12.6, 30.2] | 20.7 [14.8, 26.3] | 22.4 [12.6, 38.1] | 17.5 [11.5, 25.5] | 24.0 [18.7, 35.2] | 22.5 [11.3, 39.5] | 17.0 [10.1, 21.7] | 19.8 [13.2, 32.4] | |
| sittime_total | ||||||||||
| Mean (SD) | 664 (254) | 763 (278) | 647 (170) | 635 (304) | 745 (296) | 667 (175) | 656 (340) | 673 (259) | 779 (291) | 0.192 |
| Median [Min, Max] | 640 [184, 1610] | 682 [230, 1290] | 610 [367, 917] | 610 [107, 2390] | 703 [306, 1640] | 671 [325, 856] | 577 [201, 3170] | 653 [229, 1360] | 801 [294, 1250] | |
| Missing | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 0 (0%) | 1 (0.6%) | 0 (0%) | 0 (0%) | |
TMP<-merged.df[complete.cases(merged.df$bmi),]
model_part<-lm(vo2sum_peak_ml~screen_gender.factor, TMP)
TMP$VO2_Pk.partial_sex<-model_part$residuals
TMP$VO2_Pk.partial_sex<-round(TMP$VO2_Pk.partial_sex, digits=3)
TMP$sittime_total<-TMP$sittime_weekend_total+TMP$sittime_weekday_total_min
model_part<-lm(vo2sum_peak_ml~bmi, TMP)
TMP$VO2_Pk.partial_bmi<-model_part$residuals
TMP$VO2_Pk.partial_bmi<-round(TMP$VO2_Pk.partial_bmi, digits=3)
table1::table1(~dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+VO2_Pk.partial_sex+VO2_Pk.partial_bmi+sittime_total|screen_gender.factor+screen_mod_confirm.factor ,data= TMP, overall=F, extra.col=list(`P-value`=pvalue.func))
Female |
Male |
||||
|---|---|---|---|---|---|
| No (N=443) |
Yes (N=17) |
No (N=182) |
Yes (N=5) |
P-value | |
| dur_day_total_MODVIG_min_pla | |||||
| Mean (SD) | 48.0 (28.3) | 62.8 (33.3) | 51.9 (32.3) | 40.7 (13.3) | 0.129 |
| Median [Min, Max] | 42.0 [3.01, 188] | 56.0 [28.4, 146] | 42.7 [3.67, 182] | 38.3 [23.8, 57.0] | |
| Missing | 29 (6.5%) | 2 (11.8%) | 7 (3.8%) | 0 (0%) | |
| vo2sum_peak_ml | |||||
| Mean (SD) | 20.5 (4.44) | 22.9 (4.06) | 24.3 (5.53) | 24.9 (4.03) | <0.001 |
| Median [Min, Max] | 20.1 [10.1, 34.1] | 23.7 [14.5, 32.0] | 24.2 [11.3, 39.5] | 25.9 [18.7, 29.5] | |
| VO2_Pk.partial_sex | |||||
| Mean (SD) | -0.0902 (4.44) | 2.35 (4.06) | -0.0162 (5.53) | 0.598 (4.03) | 0.225 |
| Median [Min, Max] | -0.499 [-10.5, 13.5] | 3.10 [-6.10, 11.4] | -0.192 [-13.0, 15.2] | 1.56 [-5.64, 5.16] | |
| VO2_Pk.partial_bmi | |||||
| Mean (SD) | -1.12 (3.63) | -0.690 (3.87) | 2.70 (4.88) | 3.10 (4.07) | <0.001 |
| Median [Min, Max] | -1.19 [-13.8, 9.48] | -0.183 [-9.37, 7.07] | 3.03 [-12.5, 16.1] | 2.26 [-2.78, 7.18] | |
| sittime_total | |||||
| Mean (SD) | 651 (277) | 680 (239) | 705 (334) | 538 (263) | 0.165 |
| Median [Min, Max] | 610 [107, 2390] | 670 [338, 1290] | 639 [192, 3170] | 543 [213, 853] | |
| Missing | 0 (0%) | 0 (0%) | 0 (0%) | 1 (20.0%) | |
par(mfrow = c(1, 2))
ggpubr::gghistogram(TMP, x = "VO2_Pk.partial_sex",
add = "mean", rug = TRUE,
color = "screen_gender.factor", palette = c("#00AFBB", "#E7B800"))
ggpubr::gghistogram(TMP, x = "VO2_Pk.partial_bmi",
add = "mean", rug = TRUE,
color = "screen_gender.factor", palette = c("#00AFBB", "#E7B800"))
mod<-(lm(vo2sum_peak_ml~rand_treat.factor*screen_site.factor,merged.df ))
emm <- emmeans::emmeans(mod, pairwise ~rand_treat.factor*screen_site.factor, level = 0.95)
summary.em<-summary(emm)
sig_VO2_diffs<-summary.em$contrasts%>% filter(p.value<0.05)
sig_VO2_diffs
mod<-(lm(dur_day_total_MODVIG_min_pla~rand_treat.factor*screen_site.factor,merged.df ))
emm <- emmeans::emmeans(mod, pairwise ~rand_treat.factor*screen_site.factor, level = 0.95)
summary.em<-summary(emm)
sig_ACELL_diffs<-summary.em$contrasts%>% filter(p.value<0.05)
sig_ACELL_diffs
table1::table1(~screen_site.factor+screen_gender.factor+Heavy_Drinker.factor+Smoking.Status.factor+ dur_day_total_MODVIG_min_pla+vo2sum_peak_ml+VO2_Pk.partial_sex+VO2_Pk.partial_bmi|rand_treat.factor ,data= TMP, overall=F, extra.col=list(`P-value`=pvalue.func))
| Group 1: 150 mins of aerobic exercise (N=215) |
Group 2: 225 mins of aerobic exercise (N=214) |
Group 3: Stretch and Tone (N=209) |
P-value | |
|---|---|---|---|---|
| screen_site.factor | ||||
| Kansas | 69 (32.1%) | 71 (33.2%) | 70 (33.5%) | 0.999 |
| Northeastern | 72 (33.5%) | 71 (33.2%) | 69 (33.0%) | |
| Pitt | 74 (34.4%) | 72 (33.6%) | 70 (33.5%) | |
| screen_gender.factor | ||||
| Female | 152 (70.7%) | 151 (70.6%) | 150 (71.8%) | 0.956 |
| Male | 63 (29.3%) | 63 (29.4%) | 59 (28.2%) | |
| Heavy_Drinker.factor | ||||
| Heavy Drinker | 28 (13.0%) | 25 (11.7%) | 26 (12.4%) | 0.915 |
| Not Heavy Drinker | 187 (87.0%) | 189 (88.3%) | 183 (87.6%) | |
| Smoking.Status.factor | ||||
| Current | 11 (5.1%) | 10 (4.7%) | 9 (4.3%) | 0.95 |
| Former | 90 (41.9%) | 88 (41.1%) | 93 (44.5%) | |
| Never | 114 (53.0%) | 116 (54.2%) | 106 (50.7%) | |
| Missing | 0 (0%) | 0 (0%) | 1 (0.5%) | |
| dur_day_total_MODVIG_min_pla | ||||
| Mean (SD) | 52.5 (31.4) | 50.0 (28.0) | 45.5 (29.0) | 0.0565 |
| Median [Min, Max] | 48.2 [3.67, 188] | 42.7 [4.90, 129] | 37.6 [3.01, 166] | |
| Missing | 12 (5.6%) | 16 (7.5%) | 10 (4.8%) | |
| vo2sum_peak_ml | ||||
| Mean (SD) | 21.7 (4.75) | 21.8 (5.25) | 21.5 (5.14) | 0.828 |
| Median [Min, Max] | 21.4 [12.6, 35.2] | 21.5 [11.5, 38.1] | 20.9 [10.1, 39.5] | |
| VO2_Pk.partial_sex | ||||
| Mean (SD) | 0.0219 (4.53) | 0.0818 (4.90) | -0.161 (4.84) | 0.862 |
| Median [Min, Max] | -0.0990 [-10.4, 11.9] | -0.449 [-12.1, 13.8] | -0.299 [-13.0, 15.2] | |
| VO2_Pk.partial_bmi | ||||
| Mean (SD) | 0.110 (4.07) | 0.124 (4.46) | -0.241 (4.52) | 0.622 |
| Median [Min, Max] | -0.0360 [-9.84, 11.2] | -0.458 [-13.8, 16.0] | -0.564 [-12.5, 16.1] |
table1::table1(~screen_mod_confirm.factor+season+dur_day_total_MODVIG_min_pla+NValidays4_3wk_1we+vo2sum_peak_ml+VO2_Pk.partial_sex+VO2_Pk.partial_bmi|rand_treat.factor ,data= TMP, overall=F, extra.col=list(`P-value`=pvalue.func))
| Group 1: 150 mins of aerobic exercise (N=215) |
Group 2: 225 mins of aerobic exercise (N=214) |
Group 3: Stretch and Tone (N=209) |
P-value | |
|---|---|---|---|---|
| screen_mod_confirm.factor | ||||
| No | 207 (96.3%) | 207 (96.7%) | 202 (96.7%) | 0.964 |
| Yes | 8 (3.7%) | 7 (3.3%) | 7 (3.3%) | |
| season | ||||
| Fall | 68 (31.6%) | 69 (32.2%) | 59 (28.2%) | 0.791 |
| Spring | 41 (19.1%) | 43 (20.1%) | 52 (24.9%) | |
| Summer | 46 (21.4%) | 46 (21.5%) | 45 (21.5%) | |
| Winter | 48 (22.3%) | 40 (18.7%) | 43 (20.6%) | |
| Missing | 12 (5.6%) | 16 (7.5%) | 10 (4.8%) | |
| dur_day_total_MODVIG_min_pla | ||||
| Mean (SD) | 52.5 (31.4) | 50.0 (28.0) | 45.5 (29.0) | 0.0565 |
| Median [Min, Max] | 48.2 [3.67, 188] | 42.7 [4.90, 129] | 37.6 [3.01, 166] | |
| Missing | 12 (5.6%) | 16 (7.5%) | 10 (4.8%) | |
| NValidays4_3wk_1we | ||||
| Not Valid | 2 (0.9%) | 5 (2.3%) | 4 (1.9%) | 0.503 |
| Valid | 201 (93.5%) | 193 (90.2%) | 195 (93.3%) | |
| Missing | 12 (5.6%) | 16 (7.5%) | 10 (4.8%) | |
| vo2sum_peak_ml | ||||
| Mean (SD) | 21.7 (4.75) | 21.8 (5.25) | 21.5 (5.14) | 0.828 |
| Median [Min, Max] | 21.4 [12.6, 35.2] | 21.5 [11.5, 38.1] | 20.9 [10.1, 39.5] | |
| VO2_Pk.partial_sex | ||||
| Mean (SD) | 0.0219 (4.53) | 0.0818 (4.90) | -0.161 (4.84) | 0.862 |
| Median [Min, Max] | -0.0990 [-10.4, 11.9] | -0.449 [-12.1, 13.8] | -0.299 [-13.0, 15.2] | |
| VO2_Pk.partial_bmi | ||||
| Mean (SD) | 0.110 (4.07) | 0.124 (4.46) | -0.241 (4.52) | 0.622 |
| Median [Min, Max] | -0.0360 [-9.84, 11.2] | -0.458 [-13.8, 16.0] | -0.564 [-12.5, 16.1] |
ggstatsplot::grouped_gghistostats(merged.df,ADI_NATRANK, grouping.var=screen_site.factor)
merged.df<-merged.df %>%
group_by(screen_site.factor) %>%
mutate(
ADI_NATRANK_Z=scale(ADI_NATRANK),
ADI_STATERNK_Z=scale(ADI_STATERNK),
tes_rank=scale(tes, center=T),
tesctyscor_rank=scale(tes, center=T))
tmp<-merged.df %>% select(record_id,screen_site.factor ,race.factor,ADI_STATERNK_Z, ADI_NATRANK_Z) %>%reshape2::melt(.,id.vars=c("record_id","screen_site.factor","race.factor") )
tmp$value<-as.numeric(tmp$value)
ggpubr::gghistogram(tmp, x = "value",
add = "mean", rug = TRUE,
color = "variable", palette = c("#00AFBB", "#E7B800")) +facet_wrap(~screen_site.factor+race.factor,scale="free")
h
TMP<-merged.df[complete.cases(merged.df$ADI_STATERNK),]
summary(lm(ADI_NATRANK~poly(ADI_STATERNK,2)*screen_site.factor,TMP ))
##
## Call:
## lm(formula = ADI_NATRANK ~ poly(ADI_STATERNK, 2) * screen_site.factor,
## data = TMP)
##
## Residuals:
## Min 1Q Median 3Q Max
## -28.193 -1.601 0.169 2.009 10.371
##
## Coefficients:
## Estimate Std. Error
## (Intercept) 50.3313 0.2942
## poly(ADI_STATERNK, 2)1 619.2057 7.4694
## poly(ADI_STATERNK, 2)2 -118.2134 7.3346
## screen_site.factorNortheastern -35.2732 0.4480
## screen_site.factorPitt -6.7429 0.4275
## poly(ADI_STATERNK, 2)1:screen_site.factorNortheastern -286.3476 14.7792
## poly(ADI_STATERNK, 2)2:screen_site.factorNortheastern 155.5476 12.5009
## poly(ADI_STATERNK, 2)1:screen_site.factorPitt -21.9757 10.1623
## poly(ADI_STATERNK, 2)2:screen_site.factorPitt 87.2663 10.0537
## t value Pr(>|t|)
## (Intercept) 171.066 <2e-16 ***
## poly(ADI_STATERNK, 2)1 82.899 <2e-16 ***
## poly(ADI_STATERNK, 2)2 -16.117 <2e-16 ***
## screen_site.factorNortheastern -78.738 <2e-16 ***
## screen_site.factorPitt -15.773 <2e-16 ***
## poly(ADI_STATERNK, 2)1:screen_site.factorNortheastern -19.375 <2e-16 ***
## poly(ADI_STATERNK, 2)2:screen_site.factorNortheastern 12.443 <2e-16 ***
## poly(ADI_STATERNK, 2)1:screen_site.factorPitt -2.162 0.031 *
## poly(ADI_STATERNK, 2)2:screen_site.factorPitt 8.680 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.063 on 633 degrees of freedom
## Multiple R-squared: 0.9794, Adjusted R-squared: 0.9792
## F-statistic: 3766 on 8 and 633 DF, p-value: < 2.2e-16
mod<-(lm(ADI_NATRANK~poly(ADI_STATERNK,2)*screen_site.factor,TMP ))
par(mfrow = c(1, 2))
visreg::visreg(mod, "screen_site.factor",by="ADI_STATERNK", overlay=T )
visreg::visreg(mod, "ADI_STATERNK",by="screen_site.factor", overlay=T )
model.diag.metrics <- augment(mod)
class(model.diag.metrics$`poly(ADI_STATERNK, 2)`)<-"numeric"
mod<-(lm(ADI_NATRANK~ADI_STATERNK*screen_site.factor,TMP ))
model.diag.metrics <- augment(mod)
ggplot(model.diag.metrics, aes(ADI_STATERNK, ADI_NATRANK)) +
geom_point() +
stat_smooth(method = lm, se = FALSE) +
geom_segment(aes(xend = ADI_STATERNK, yend = .fitted), color = "red", size = 0.3)+facet_wrap(~screen_site.factor)
summary(lm(ses_life_standing.factor~ses_community_standing.factor:tes+screen_site.factor+educ,merged.df ))
##
## Call:
## lm(formula = ses_life_standing.factor ~ ses_community_standing.factor:tes +
## screen_site.factor + educ, data = merged.df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.4996 -0.8985 0.0961 0.8888 3.9428
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.0956795 0.4428385 0.216 0.829
## screen_site.factorNortheastern 0.1560715 0.1362785 1.145 0.253
## screen_site.factorPitt -0.0896990 0.1360122 -0.659 0.510
## educ 0.1985580 0.0248347 7.995 6.43e-15 ***
## ses_community_standing.factor:tes 0.0047963 0.0003101 15.467 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.364 on 615 degrees of freedom
## (28 observations deleted due to missingness)
## Multiple R-squared: 0.3595, Adjusted R-squared: 0.3553
## F-statistic: 86.28 on 4 and 615 DF, p-value: < 2.2e-16
mod<-(lm(ses_life_standing.factor~ses_community_standing.factor:tes+screen_site.factor+educ,merged.df ))
visreg::visreg(mod, "ses_community_standing.factor",by="tes", overlay=T)
model.diag.metrics <- augment(mod)
ggplot(model.diag.metrics, aes(ses_community_standing.factor, ses_life_standing.factor)) +
geom_point() +
stat_smooth(method = lm, se = FALSE) +
geom_segment(aes(xend = ses_community_standing.factor, yend = .fitted), color = "red", size = 0.3) +facet_wrap(~screen_site.factor)
par(mfrow = c(2, 2))
autoplot(mod)
table1::table1(~screen_age+AVG_cogTscore_rank+educ+ADI_NATRANK+ADI_STATERNK+`Walkability Index`+tes+tesctyscor|screen_site.factor ,data= merged.df, overall=F, extra.col=list(`P-value`=pvalue.func))
| Kansas (N=214) |
Northeastern (N=215) |
Pitt (N=219) |
P-value | |
|---|---|---|---|---|
| screen_age | ||||
| Mean (SD) | 69.4 (3.76) | 70.5 (3.76) | 69.4 (3.62) | 0.00326 |
| Median [Min, Max] | 69.0 [64.0, 80.0] | 70.0 [65.0, 80.0] | 69.0 [65.0, 80.0] | |
| AVG_cogTscore_rank | ||||
| Mean (SD) | 0.993 (0.119) | 0.954 (0.132) | 0.990 (0.125) | 0.00165 |
| Median [Min, Max] | 1.01 [0.632, 1.21] | 0.954 [0.630, 1.21] | 1.00 [0.644, 1.26] | |
| educ | ||||
| Mean (SD) | 16.4 (2.19) | 16.5 (2.26) | 16.1 (2.22) | 0.183 |
| Median [Min, Max] | 16.0 [11.0, 21.0] | 16.0 [12.0, 20.0] | 16.0 [10.0, 20.0] | |
| ADI_NATRANK | ||||
| Mean (SD) | 43.2 (24.3) | 11.2 (8.76) | 55.7 (25.5) | <0.001 |
| Median [Min, Max] | 38.0 [5.00, 100] | 9.00 [1.00, 52.0] | 54.0 [4.00, 100] | |
| Missing | 1 (0.5%) | 5 (2.3%) | 0 (0%) | |
| ADI_STATERNK | ||||
| Mean (SD) | 2.95 (2.60) | 2.87 (1.97) | 5.04 (2.99) | <0.001 |
| Median [Min, Max] | 2.00 [1.00, 10.0] | 2.00 [1.00, 10.0] | 5.00 [1.00, 10.0] | |
| Missing | 1 (0.5%) | 5 (2.3%) | 0 (0%) | |
| Walkability Index | ||||
| Mean (SD) | 10.9 (3.94) | 15.2 (2.51) | 13.4 (3.82) | <0.001 |
| Median [Min, Max] | 10.7 [2.67, 18.3] | 15.5 [4.50, 19.3] | 14.2 [4.17, 19.8] | |
| tes | ||||
| Mean (SD) | 98.1 (7.95) | 91.2 (8.70) | 91.3 (10.0) | <0.001 |
| Median [Min, Max] | 100 [34.8, 100] | 93.2 [37.4, 100] | 93.2 [42.1, 100] | |
| Missing | 17 (7.9%) | 0 (0%) | 6 (2.7%) | |
| tesctyscor | ||||
| Mean (SD) | 94.5 (4.17) | 89.0 (4.12) | 88.0 (3.19) | <0.001 |
| Median [Min, Max] | 95.7 [71.8, 100] | 90.4 [68.1, 91.7] | 87.0 [59.7, 95.3] | |
| Missing | 17 (7.9%) | 0 (0%) | 6 (2.7%) |