The INTErventions, Research, and Action in Cities Team (INTERACT) is a national research collaboration of scientists, urban planners, and engaged citizens uncovering how the design of our cities is shaping the health and wellbeing of Canadians (www.teaminteract.ca). INTERACT is conducting longitudinal, mixed-methods natural experiment studies in four Canadian cities, with the aim of providing evidence on the impacts of urban transformations on people’s physical activity, social connectedness, and wellbeing, and inequalities in these outcomes.
The Arbutus Greenway in Vancouver is a 9-km former rail corridor, which is being developed into a continuous walking and cycling corridor connecting South Vancouver to False Creek. Participants who lived in one of the 12 Forward Sortation Area (FSA) within 3 km of the Arbutus Greenway were eligible to participate. Exclusion criteria across all sites were being younger than 18 years old, not being able to read or write English (or English or French in Montreal) well enough to answer an online survey and any intention to move out of the region in the next two years.
Participants were recruited through social media, news media, street and community events outreach, and partner newsletters. Responses were collected between August 26th, 2020 and February 7th, 2021. In Vancouver, 194 returning participants, and 106 new participants completed the Health Questionnaire, for a total of 300 responses.
Section 1: Transportation
What is your main mode of transportation?
#transp_main_mode
var_name <- w2$transp_main_mode2
w2$var_name_f <- recode_factor(var_name, "1" = "Walking / Wheeling (with a mobility assistive device)", "2" = "Biking", "3"= "Public Transit", "4" = "Car", "5"= "Motorcycle or scooter", "6"= "Other")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPaletteSet) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Walking / Wheeling (with a mobility assistive device)
|
110
|
36.67
|
|
Biking
|
49
|
16.33
|
|
Public Transit
|
26
|
8.67
|
|
Car
|
111
|
37.00
|
|
Motorcycle or scooter
|
2
|
0.67
|
|
Other
|
2
|
0.67
|
How much do you enjoy using each transportation mode?
Walking
#preferred_mode_a walking
var_name <- w2$preferred_mode_a2
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
208
|
69.33
|
|
2
|
59
|
19.67
|
|
3
|
19
|
6.33
|
|
4 Not at all
|
3
|
1.00
|
|
Not applicable
|
11
|
3.67
|
Biking
#preferred_mode_b biking
var_name <- w2$preferred_mode_b
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
115
|
38.33
|
|
2
|
50
|
16.67
|
|
3
|
47
|
15.67
|
|
4 Not at all
|
27
|
9.00
|
|
Not applicable
|
61
|
20.33
|
Public transit
#preferred_mode_c public transit
var_name <- w2$preferred_mode_c
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
14
|
4.67
|
|
2
|
42
|
14.00
|
|
3
|
116
|
38.67
|
|
4 Not at all
|
96
|
32.00
|
|
Not applicable
|
32
|
10.67
|
Car
#preferred_mode_d car
var_name <- w2$preferred_mode_d
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
68
|
22.67
|
|
2
|
100
|
33.33
|
|
3
|
95
|
31.67
|
|
4 Not at all
|
12
|
4.00
|
|
Not applicable
|
25
|
8.33
|
Motorcycle or scooter
#preferred_mode_e motorcycle or scooter
var_name <- w2$preferred_mode_e
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot","2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
7
|
2.33
|
|
2
|
3
|
1.00
|
|
3
|
3
|
1.00
|
|
4 Not at all
|
57
|
19.00
|
|
Not applicable
|
230
|
76.67
|
Thinking of how you felt prior to the COVID-19 pandemic, how much did you enjoy using each transportation mode?
walking
#preferred_mode_a walking
var_name <- w2$preferred_mode_prior_a2
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3","4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
210
|
70.00
|
|
2
|
59
|
19.67
|
|
3
|
15
|
5.00
|
|
4 Not at all
|
3
|
1.00
|
|
Not applicable
|
13
|
4.33
|
biking
#preferred_mode_b biking
var_name <- w2$preferred_mode_prior_b
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3","4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
118
|
39.33
|
|
2
|
67
|
22.33
|
|
3
|
34
|
11.33
|
|
4 Not at all
|
18
|
6.00
|
|
Not applicable
|
63
|
21.00
|
public transit
#preferred_mode_c public transit
var_name <- w2$preferred_mode_prior_c
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
58
|
19.33
|
|
2
|
108
|
36.00
|
|
3
|
72
|
24.00
|
|
4 Not at all
|
43
|
14.33
|
|
Not applicable
|
19
|
6.33
|
car
#preferred_mode_d car
var_name <- w2$preferred_mode_prior_d
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
74
|
24.67
|
|
2
|
104
|
34.67
|
|
3
|
82
|
27.33
|
|
4 Not at all
|
16
|
5.33
|
|
Not applicable
|
24
|
8.00
|
motorcycle or scooter
#preferred_mode_e motorcycle or scooter
var_name <- w2$preferred_mode_prior_e
w2$var_name_f <- recode_factor(var_name, "1" = "1 A lot", "2" = "2", "3" = "3", "4" = "4 Not at all", "5" = "Not applicable")
var_name_f <- w2$var_name_f
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
mutate(pct = round(100*n/sum(n),2))
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat="identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Percent") +
xlab("") +
ggtitle("") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
1 A lot
|
6
|
2
|
|
2
|
3
|
1
|
|
3
|
3
|
1
|
|
4 Not at all
|
39
|
13
|
|
Not applicable
|
249
|
83
|
Do you have access to a car?
var_name <- w2$car_access
w2$var_name_f <- recode_factor(var_name, "1" = "Yes", "2" = "No")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Yes
|
265
|
88.33
|
|
No
|
35
|
11.67
|
Do you have access to a bicycle?
#bike_access
var_name <- w2$bike_access
w2$var_name_f <- recode_factor(var_name, "1" = "Yes", "2" = "No")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(var_name_f, y= pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Yes
|
235
|
78.33
|
|
No
|
65
|
21.67
|
On a scale of 1 to 5, with 1 being ‘very safe’ and 5 being ‘very dangerous’, overall, how safe do you think cycling is in your city?
#bike_safety
var_name <- w2$bike_safety
w2$var_name_f <- recode_factor(var_name, "1" = "Very safe", "2" = "Somewhat safe", "3" = "Neither safe nor unsafe", "4" = "Somewhat dangerous", "5" = "Very dangerous", "77" = "I don't know/prefer not to say")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Very safe
|
50
|
16.67
|
|
Somewhat safe
|
156
|
52.00
|
|
Neither safe nor unsafe
|
31
|
10.33
|
|
Somewhat dangerous
|
58
|
19.33
|
|
Very dangerous
|
3
|
1.00
|
|
I don’t know/prefer not to say
|
2
|
0.67
|
Have you ever heard of the Arbutus Greenway?
#ag_familiarty
var_name <- w2$ag_familiarity
w2$var_name_f <- recode_factor(var_name, "1" = "Yes", "2" = "No")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Yes
|
298
|
99.33
|
|
No
|
2
|
0.67
|
Do you think that the Arbutus Greenway is a good or bad idea for Vancouver? It is a…
var_name <- w2$ag_idea
w2$var_name_f <- recode_factor(var_name, "1" = "Very good idea", "2" = "Somewhat good idea", "3" = "Somewhat bad idea", "4" = "Very bad idea", "77" = "I don't know")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Very good idea
|
278
|
92.67
|
|
Somewhat good idea
|
17
|
5.67
|
|
Somewhat bad idea
|
3
|
1.00
|
|
I don’t know
|
2
|
0.67
|
Have you ever used the Arbutus Greenway?
#ag_used_ever
var_name <- w2$ag_used_ever
w2$var_name_f <- recode_factor(var_name, "1" = "Yes", "2" = "No")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Yes
|
284
|
94.67
|
|
No
|
16
|
5.33
|
How often do you typically travel by bicycle along the Arbutus Greenway during each season?
# ag_bike_freq_a
w2$ag_bike_freq_a[w2$ag_bike_freq_a==-7] <- NA
w2$ag_bike_freq_b[w2$ag_bike_freq_b==-7] <- NA
w2$ag_bike_freq_c[w2$ag_bike_freq_c==-7] <- NA
w2$ag_bike_freq_d[w2$ag_bike_freq_d==-7] <- NA
fall <- ggplot(w2, aes(x = w2$ag_bike_freq_a)) + geom_histogram (na.rm = TRUE, binwidth = 5, fill="#BF5B04") + xlab("Times in the fall") + facet_wrap(~ compare)
winter <- ggplot(w2, aes(x = w2$ag_bike_freq_b)) + geom_histogram (na.rm = TRUE, binwidth = 5, fill="#35AAF2") + xlab("Times in the winter")+ facet_wrap(~ compare)
spring <- ggplot(w2, aes(x = w2$ag_bike_freq_c)) + geom_histogram (na.rm = TRUE, binwidth = 5, fill="#76D24A") + xlab("Times in the spring")+ facet_wrap(~ compare)
summer <- ggplot(w2, aes(x = w2$ag_bike_freq_d)) + geom_histogram (na.rm = TRUE, binwidth = 5, fill="#F2B705") + xlab("Times in the summer")+ facet_wrap(~ compare)
grid.arrange(fall,winter,spring,summer)

How do you usually get to the Arbutus Greenway?
#intercept_ag_mode
w2$intercept_ag_mode2[w2$intercept_ag_mode2==-7] <- NA
var_name <- w2$intercept_ag_mode2
w2$var_name_f <- recode_factor(var_name, "1" = "Walking", "2" = "Running/Jogging", "3"= "Biking", "4" = "Public Transit", "5"= "Car", "6"= "Motorcycle or scooter", "7" ="Other")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalettecont) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Walking
|
148
|
49.33
|
|
Running/Jogging
|
14
|
4.67
|
|
Biking
|
105
|
35.00
|
|
Public Transit
|
3
|
1.00
|
|
Car
|
9
|
3.00
|
|
Other
|
5
|
1.67
|
|
NA
|
16
|
5.33
|
What is your usual reason for using the Arbutus Greenway?
# intercept_ag_reason
w2$intercept_ag_reason[w2$intercept_ag_reason==-7] <- NA
var_name <- w2$intercept_ag_reason
w2$var_name_f <- recode_factor(var_name, "1" = "For recreation", "2" = "For transportation", "3" = "Both for recreation and transportation")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
For recreation
|
106
|
35.33
|
|
For transportation
|
35
|
11.67
|
|
Both for recreation and transportation
|
143
|
47.67
|
|
NA
|
16
|
5.33
|
In your opinion, the maintenance of the Arbutus Greenway is excellent, good, fair, or poor?
## intercept_ag_maintenance
w2$intercept_ag_maintenance[w2$intercept_ag_maintenance==-7] <- NA
var_name <- w2$intercept_ag_maintenance
w2$var_name_f <- recode_factor(var_name, "1" = "Excellent", "2" = "Good", "3" = "Fair", "4" ="Poor", "77" = "I don't know")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Excellent
|
134
|
44.67
|
|
Good
|
126
|
42.00
|
|
Fair
|
20
|
6.67
|
|
Poor
|
1
|
0.33
|
|
I don’t know
|
3
|
1.00
|
|
NA
|
16
|
5.33
|
How safe do you feel travelling along the Arbutus Greenway in terms of
safety from traffic?
#intercept_ag_safety_traffic
w2$intercept_ag_safety_traffic[w2$intercept_ag_safety_traffic==-7] <- NA
var_name <- w2$intercept_ag_safety_traffic
w2$var_name_f <- recode_factor(var_name, "1" = "Very safe", "2" = "Somewhat safe", "3" = "Neither safe nor unsafe", "4" ="Somewhat unsafe", "5" = "Very unsafe" , "77" = "I don't know")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Very safe
|
186
|
62.00
|
|
Somewhat safe
|
82
|
27.33
|
|
Neither safe nor unsafe
|
9
|
3.00
|
|
Somewhat unsafe
|
6
|
2.00
|
|
Very unsafe
|
1
|
0.33
|
|
NA
|
16
|
5.33
|
personal safety?
#intercept_ag_safety_personal
w2$intercept_ag_safety_personal[w2$intercept_ag_safety_personal==-7] <- NA
w2$intercept_ag_safety_traffic[w2$intercept_ag_safety_personal==-7] <- NA
var_name <- w2$intercept_ag_safety_personal
w2$var_name_f <- recode_factor(var_name, "1" = "Very safe", "2" = "Somewhat safe", "3" = "Neither safe nor unsafe", "4" ="Somewhat unsafe", "5" = "Very unsafe" , "77" = "I don't know")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=90, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Very safe
|
191
|
63.67
|
|
Somewhat safe
|
81
|
27.00
|
|
Neither safe nor unsafe
|
7
|
2.33
|
|
Somewhat unsafe
|
4
|
1.33
|
|
I don’t know
|
1
|
0.33
|
|
NA
|
16
|
5.33
|
Are you using the Arbutus Greenway (walking, biking, etc.) more, less, or the same since spring 2017?
#intercept_ag_spring
w2$intercept_ag_spring2[w2$intercept_ag_spring2==-7] <- NA
var_name <- w2$intercept_ag_spring2
w2$var_name_f <- recode_factor(var_name, "1" = "More", "2" = "Same", "3" = "Less", "77" = "I don't know")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPalette3) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
More
|
137
|
45.67
|
|
Same
|
93
|
31.00
|
|
Less
|
50
|
16.67
|
|
I don’t know
|
4
|
1.33
|
|
NA
|
16
|
5.33
|
Do you plan to use the Arbutus Greenway in the future?
# intercept_ag_future
var_name <- w2$intercept_ag_future
w2$var_name_f <- recode_factor(var_name, "1" = "Yes", "2" = "No")
var_name_f <- w2$var_name_f
##### Table
t_1 <- w2 %>%
group_by(compare, var_name_f) %>%
dplyr::summarise(n = n()) %>%
dplyr:: mutate(pct = round(100*n/sum(n),2))
##### Figure
p <- ggplot(t_1, aes(x = var_name_f, y = pct, fill = var_name_f)) + theme(axis.text.x = element_text(angle=0, vjust = .6)) +
geom_bar(stat= "identity") +
scale_fill_manual(values = INTERACTPaletteYN) +
guides(fill=FALSE) +
ylab("Count") +
xlab("Response") +
facet_wrap(~ compare)
plot(p)

kable(t_1) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
compare
|
var_name_f
|
n
|
pct
|
|
Yes
|
295
|
98.33
|
|
No
|
5
|
1.67
|
Would any of the following amenities encourage you to use the Arbutus Greenway more? Check ALL that apply.
New participants
*Participants could choose many options. Count is number of times option was selected.
# 1 Recycling or waste receptacles/garbage cans
# 2 Benches
# 3 Bathrooms
# 4 Lighting
# 5 Water fountains
# 6 Picnic areas
# 7 Playgrounds
# 8 Mobi stations
# 9 Public art
# 10 Shady zones
# 99 Other (Please specify)
# -7 Not applicable
#new
intercept_ag_amenities_1 <- as.numeric(table(new$intercept_ag_amenities_1[new$intercept_ag_amenities_1==1]))
intercept_ag_amenities_2 <- as.numeric(table(new$intercept_ag_amenities_2[new$intercept_ag_amenities_2==1]))
intercept_ag_amenities_3 <- as.numeric(table(new$intercept_ag_amenities_3[new$intercept_ag_amenities_3==1]))
intercept_ag_amenities_4 <- as.numeric(table(new$intercept_ag_amenities_4[new$intercept_ag_amenities_4==1]))
intercept_ag_amenities_5 <- as.numeric(table(new$intercept_ag_amenities_5[new$intercept_ag_amenities_5==1]))
intercept_ag_amenities_6 <- as.numeric(table(new$intercept_ag_amenities_6[new$intercept_ag_amenities_6==1]))
intercept_ag_amenities_7 <- as.numeric(table(new$intercept_ag_amenities_7[new$intercept_ag_amenities_7==1]))
intercept_ag_amenities_8 <- as.numeric(table(new$intercept_ag_amenities_8[new$intercept_ag_amenities_8==1]))
intercept_ag_amenities_9 <- as.numeric(table(new$intercept_ag_amenities_9[new$intercept_ag_amenities_9==1]))
intercept_ag_amenities_10 <- as.numeric(table(new$intercept_ag_amenities_10[new$intercept_ag_amenities_10==1]))
intercept_ag_amenities_99 <- as.numeric(table(new$intercept_ag_amenities_99[new$intercept_ag_amenities_99==1]))
amenities_new <- data.frame(Response = c("Recycling or waste receptacles/garbage cans",
"Benches",
"Bathrooms",
"Lighting",
"Water fountains",
"Picnic areas",
"Playgrounds",
"Mobi Stations",
"Public art",
"Shady zones",
"Other"),
Frequency= c(intercept_ag_amenities_1 ,intercept_ag_amenities_2 ,intercept_ag_amenities_3 ,intercept_ag_amenities_4 ,intercept_ag_amenities_5 ,intercept_ag_amenities_6 ,intercept_ag_amenities_7 ,intercept_ag_amenities_8 ,intercept_ag_amenities_9 ,intercept_ag_amenities_10,intercept_ag_amenities_99))
kable(amenities_new) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Response
|
Frequency
|
Recycling or waste receptacles/garbage cans
|
46
|
Benches
|
50
|
Bathrooms
|
51
|
Lighting
|
66
|
Water fountains
|
37
|
Picnic areas
|
42
|
Playgrounds
|
18
|
Mobi Stations
|
3
|
Public art
|
45
|
Shady zones
|
37
|
Other
|
15
|
Returning participants
*Participants could choose many options. Count is number of times option was selected.
#returning
intercept_ag_amenities_1 <- as.numeric(table(ret$intercept_ag_amenities_1[ret$intercept_ag_amenities_1==1]))
intercept_ag_amenities_2 <- as.numeric(table(ret$intercept_ag_amenities_2[ret$intercept_ag_amenities_2==1]))
intercept_ag_amenities_3 <- as.numeric(table(ret$intercept_ag_amenities_3[ret$intercept_ag_amenities_3==1]))
intercept_ag_amenities_4 <- as.numeric(table(ret$intercept_ag_amenities_4[ret$intercept_ag_amenities_4==1]))
intercept_ag_amenities_5 <- as.numeric(table(ret$intercept_ag_amenities_5[ret$intercept_ag_amenities_5==1]))
intercept_ag_amenities_6 <- as.numeric(table(ret$intercept_ag_amenities_6[ret$intercept_ag_amenities_6==1]))
intercept_ag_amenities_7 <- as.numeric(table(ret$intercept_ag_amenities_7[ret$intercept_ag_amenities_7==1]))
intercept_ag_amenities_8 <- as.numeric(table(ret$intercept_ag_amenities_8[ret$intercept_ag_amenities_8==1]))
intercept_ag_amenities_9 <- as.numeric(table(ret$intercept_ag_amenities_9[ret$intercept_ag_amenities_9==1]))
intercept_ag_amenities_10 <- as.numeric(table(ret$intercept_ag_amenities_10[ret$intercept_ag_amenities_10==1]))
intercept_ag_amenities_99 <- as.numeric(table(ret$intercept_ag_amenities_99[ret$intercept_ag_amenities_99==1]))
amenities_ret <- data.frame(Response = c("Recycling or waste receptacles/garbage cans",
"Benches",
"Bathrooms",
"Lighting",
"Water fountains",
"Picnic areas",
"Playgrounds",
"Mobi Stations",
"Public art",
"Shady zones",
"Other"),
Frequency= c(intercept_ag_amenities_1 ,intercept_ag_amenities_2 ,intercept_ag_amenities_3 ,intercept_ag_amenities_4 ,intercept_ag_amenities_5 ,intercept_ag_amenities_6 ,intercept_ag_amenities_7 ,intercept_ag_amenities_8 ,intercept_ag_amenities_9 ,intercept_ag_amenities_10,intercept_ag_amenities_99))
kable(amenities_ret) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Response
|
Frequency
|
Recycling or waste receptacles/garbage cans
|
78
|
Benches
|
90
|
Bathrooms
|
87
|
Lighting
|
93
|
Water fountains
|
64
|
Picnic areas
|
52
|
Playgrounds
|
22
|
Mobi Stations
|
12
|
Public art
|
61
|
Shady zones
|
73
|
Other
|
38
|
Section 2: Physical Activity
During the last 7 days, on how many days did you do vigorous physical activities like heavy lifting, digging, heavy construction, or climbing up stairs as part of your work? Think about only those physical activities that you did for at least 10 minutes at a time.
#work_vigpa
ggplot(w2, aes(x = w2$work_vigpa)) + geom_histogram(na.rm = TRUE, fill = "#1596FF") + xlab("N days vigorous job-related physical activity") + facet_wrap(~ compare)

kable(data.frame(Days = 0:7, N = as.numeric(table(w2$work_vigpa)), Percentage = round(as.numeric(prop.table(table(w2$work_vigpa)))*100,2))) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Days
|
N
|
Percentage
|
0
|
241
|
80.33
|
1
|
17
|
5.67
|
2
|
7
|
2.33
|
3
|
6
|
2.00
|
4
|
9
|
3.00
|
5
|
7
|
2.33
|
6
|
2
|
0.67
|
7
|
11
|
3.67
|
How much time did you usually spend on one of those days doing vigorous physical activities as part of your work?
#work_vigpa_freq
w2$work_vigpa_freq[w2$work_vigpa_freq==-7] <- NA
ggplot(w2, aes(x = work_vigpa_freq)) + geom_histogram(na.rm = TRUE, binwidth = 20, fill= "#35AAC2") + xlab("Minutes vigorous job-related physical activity") + facet_wrap(~ compare)

summary(w2$work_vigpa_freq)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.00 15.00 60.00 71.69 85.00 480.00 241
During the last 7 days, on how many days did you travel in a motor vehicle like a train, bus, car, or metro?
#travel_motor
ggplot(w2, aes(x = w2$travel_motor)) + geom_histogram(na.rm = TRUE, fill="#1596FF") + xlab("N days") + facet_wrap(~ compare)

kable(data.frame(Days = 0:7, N = as.numeric(table(w2$travel_motor)), Percentage = round(as.numeric(prop.table(table(w2$travel_motor)))*100,2))) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Days
|
N
|
Percentage
|
0
|
38
|
12.67
|
1
|
44
|
14.67
|
2
|
52
|
17.33
|
3
|
43
|
14.33
|
4
|
36
|
12.00
|
5
|
30
|
10.00
|
6
|
22
|
7.33
|
7
|
35
|
11.67
|
How much time did you usually spend on one of those days travelling in a train, bus, car, metro, or other kind of motor vehicle?
#travel_motor_freq
w2$travel_motor_freq[w2$travel_motor_freq==-7] <- NA
ggplot(w2, aes(x = w2$travel_motor_freq)) + geom_histogram(na.rm = TRUE, binwidth = 20, fill= "#35AAC2") + xlab("Minutes travel time") + facet_wrap(~ compare)

summary(w2$travel_motor_freq)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.00 30.00 40.00 52.62 60.00 600.00 38
During the last 7 days, on how many days did you bicycle for at least 10 minutes at a time to go from place to place?
#travel_bike
ggplot(w2, aes(x = w2$travel_bike)) + geom_histogram(na.rm = TRUE, fill="#1596FF") + xlab("N days")+ facet_wrap(~ compare)

kable(data.frame(Days = 0:7, N = as.numeric(table(w2$travel_bike)), Percentage = round(as.numeric(prop.table(table(w2$travel_bike)))*100,2))) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Days
|
N
|
Percentage
|
0
|
185
|
61.67
|
1
|
33
|
11.00
|
2
|
22
|
7.33
|
3
|
21
|
7.00
|
4
|
16
|
5.33
|
5
|
12
|
4.00
|
6
|
7
|
2.33
|
7
|
4
|
1.33
|
How much time did you usually spend on one of those days to bicycle from place to place?
#travel_bike_freq
w2$travel_bike_freq[w2$travel_bike_freq==-7] <- NA
ggplot(w2, aes(x = w2$travel_bike_freq)) + geom_histogram(na.rm = TRUE, binwidth = 20, fill= "#35AAC2") + xlab("Minutes travel time") + facet_wrap(~ compare)

summary(w2$travel_bike_freq)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.00 30.00 60.00 55.96 60.00 240.00 185
During the last 7 days, on how many days did you walk for at least 10 minutes at a time to go from place to place?
#travel_walk
ggplot(w2, aes(x = w2$travel_walk)) + geom_histogram(na.rm = TRUE, fill="#1596FF") + xlab("# of days in the last 7 days")+ facet_wrap(~ compare)

kable(data.frame(Days = 0:7, N = as.numeric(table(w2$travel_walk)), Percentage = round(as.numeric(prop.table(table(w2$travel_walk)))*100,2))) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Days
|
N
|
Percentage
|
0
|
23
|
7.67
|
1
|
17
|
5.67
|
2
|
39
|
13.00
|
3
|
43
|
14.33
|
4
|
34
|
11.33
|
5
|
35
|
11.67
|
6
|
23
|
7.67
|
7
|
86
|
28.67
|
How much time did you usually spend on one of those days walking from place to place?
#travel_walk_freq
w2$travel_walk_freq[w2$travel_walk_freq==-7] <- NA
ggplot(w2, aes(x = w2$travel_walk_freq)) + geom_histogram(na.rm = TRUE, binwidth = 20, fill= "#35AAC2") + xlab("Minutes travel time") + facet_wrap(~ compare)

summary(w2$travel_walk_freq)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 10.00 30.00 40.00 48.62 60.00 300.00 23
Not counting any walking for transportation that you have already mentioned, during the last 7 days, on how many days did you walk for at least 10 minutes at a time in your leisure time?
#leisure_walk
ggplot(w2, aes(x = w2$leisure_walk)) + geom_histogram(na.rm = TRUE, fill="#1596FF") + xlab("N days")+ facet_wrap(~ compare)

kable(data.frame(Days = 0:7, N = as.numeric(table(w2$leisure_walk)), Percentage = round(as.numeric(prop.table(table(w2$leisure_walk))*100,2)))) %>% kable_styling(bootstrap_options = "striped", full_width = T, position = "left")
Days
|
N
|
Percentage
|
0
|
48
|
16
|
1
|
25
|
8
|
2
|
41
|
14
|
3
|
32
|
11
|
4
|
26
|
9
|
5
|
20
|
7
|
6
|
20
|
7
|
7
|
88
|
29
|
How much time did you usually spend on one of those days walking in your leisure time?
#leisure_walk_freq
w2$leisure_walk_freq[w2$leisure_walk_freq==-7] <- NA
ggplot(w2, aes(x = w2$leisure_walk_freq)) + geom_histogram(na.rm = TRUE, binwidth = 20, fill= "#35AAC2") + xlab("Minutes leisure time") + facet_wrap(~ compare)
