From 3583c0917b8b05907147dd460e8c21d978c72fac Mon Sep 17 00:00:00 2001
From: syounkin <syounkin@wisc.edu>
Date: Fri, 1 Nov 2024 10:29:10 -0500
Subject: [PATCH] Finished Organizing Rmarkdown Script

---
 .gitignore           |  1 +
 R/route_analysis.Rmd | 52 ++++++++++++++++++++++++--------------------
 2 files changed, 30 insertions(+), 23 deletions(-)

diff --git a/.gitignore b/.gitignore
index 6ed82b1..b38b214 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,3 +20,4 @@ archive/
 trash/
 api_key
 R/route_analysis.html
+log/
diff --git a/R/route_analysis.Rmd b/R/route_analysis.Rmd
index c9d287c..1ef53cf 100644
--- a/R/route_analysis.Rmd
+++ b/R/route_analysis.Rmd
@@ -7,7 +7,7 @@ output:
     toc_float:
       collapsed: false
       smooth_scroll: true
-editor_options: 
+editor_options:
   chunk_output_type: console
 ---
 
@@ -34,16 +34,19 @@ set.seed(1)
 
 ```{r gpkg, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
 WI_schools <- st_transform(st_read(dsn = "data/Schools/Wisconsin_Public_Schools_-5986231931870160084.gpkg"), crs = 4326)
-WI_schools <- WI_schools %>% mutate(geom = SHAPE)
+# WI_schools <- WI_schools %>% mutate(geom = SHAPE)
+names(WI_schools)
 ```
+There was an error here. _SHAPE_ does not exist in the _WI\_schools_ object. The variable _geom_ is already in _WI\_schools_.
 
 ## Addresses Data
 
 ```{r addresses, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
 addresses <- read_csv(file="data/addresses/Addresses_Students_EastHS_2024_GeocodeResults.csv") %>%
   filter(lat > 0) %>%
-  st_as_sf(coords=c("lon","lat"), crs=4326) # remember x=lon and y=lat
+  st_as_sf(coords=c("lon","lat"), crs=4326)
 ```
+(Remember that x = lon and y = lat.)
 
 ## Open Source Routing Machine (OSRM)
 
@@ -57,14 +60,13 @@ options(osrm.profile = "walk")
 ```{r stadiamaps, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
 register_stadiamaps(key = substr(read_file(file = "api_keys/stadia_api_key"), 1, 36))
 ```
-
 # Analysis
 
 ## Subset Addresses Within 1.5 Miles
 
 ```{r walkBoundary, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
-walk_boundary_m <- 1.5 * 1609 ## walk boundary
-school_focus <- data.frame(name = c("East High School"), NCES_CODE = c("550852000925")) ## school focus
+walk_boundary_m <- 1.5*1609
+school_focus <- data.frame(name = c("East High School"), NCES_CODE = c("550852000925"))
 
 walk_boundary_poly <- fill_holes(st_make_valid(osrmIsodistance(
   loc = WI_schools %>% filter(NCES_CODE %in% school_focus$NCES_CODE),
@@ -75,6 +77,21 @@ walk_boundary_poly <- fill_holes(st_make_valid(osrmIsodistance(
 addresses_near <- st_intersection(addresses, walk_boundary_poly)
 ```
 
+## Calculate Routes
+
+```{r routes, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
+routes <- list(NULL)
+
+for(i in addresses_near$number) {
+ routes[[i]] <- osrmRoute(
+      src = addresses_near %>% filter(number == i),
+      dst = WI_schools %>% filter(NCES_CODE %in% school_focus$NCES_CODE))
+  message(paste0("done - ", i, "of", max(addresses_near$number)))
+}
+
+routes <- bind_rows(routes)
+```
+
 ## Bike Level of Traffic Stress (LTS)
 
 ```{r bikelts, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
@@ -91,21 +108,6 @@ bike_lts_scale <- data.frame(code = c(1, 2, 3, 4, 9),
                                        "#fdae61",
                                        "#d7191c",
                                        "#d7191c"))
-```
-
-## The Rest
-
-```{r therest, eval = TRUE, echo = TRUE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
-
-## calculate routes
-routes <- list(NULL)
-for(i in addresses_near$number) {
- routes[[i]] <- osrmRoute(
-      src = addresses_near %>% filter(number == i),
-      dst = WI_schools %>% filter(NCES_CODE %in% school_focus$NCES_CODE))
-  message(paste0("done - ", i, "of", max(addresses_near$number)))
-}
-routes <- bind_rows(routes)
 
 ## combine routes
 # Count the routes that intersect or overlap with each segment of the bike_tls network.
@@ -115,6 +117,11 @@ bike_lts_buffer <- st_buffer(st_intersection(bike_lts, walk_boundary_poly), 20)
 bike_lts_buffer["student_use"] <- unlist(lapply(st_intersects(bike_lts_buffer, routes), length))
 
 bike_lts <- st_join(bike_lts, bike_lts_buffer %>% select(OBJECTID, student_use))
+```
+
+# Make Maps
+
+```{r maps, eval = TRUE, echo = FALSE, results = "show", warning = FALSE, error = TRUE, message = FALSE}
 
 ## make maps
 # load logo
@@ -260,6 +267,7 @@ ggmap(basemap) +
                 nudge_y = 0.0015,
                 label.size = 0.04,
                 size = 2)
+
 ggsave(file = paste0("figures/",
                      school_focus %>% pull(name),
                      " Addresses.pdf"),
@@ -269,8 +277,6 @@ ggsave(file = paste0("figures/",
        width = 11,
        units = "in",
        create.dir = TRUE)
-
-
 ```
 
 # Appendix