Skip to content

Instantly share code, notes, and snippets.

View elipousson's full-sized avatar

Eli Pousson elipousson

View GitHub Profile
@elipousson
elipousson / read_qmd_params.R
Created August 29, 2024 22:50
R function for reading a subset of front-matter keys for one or more Qmd documents into a table
#' Use lightparser::split_to_tbl to read YAML keys from one or more Quarto
#' document
#'
#' Created 2024-08-29 to reconcile the file names and schedule of the slides,
#' week overview pages, and exercises.
read_qmd_params <- function(path,
...,
recurse = FALSE,
keys = c("order",
"title",
@elipousson
elipousson / ymlthis-helpers.R
Created August 29, 2024 22:36
Helper functions using the ymlthis R package to read and update YAML front matter from a document
index_yml <- function(txt = NULL) {
if (rlang::is_string(txt) && fs::is_file(txt)) {
txt <- readLines(txt)
}
c(2:(which(txt == "---")[2] - 1))
}
read_yml <- function(path, remove = FALSE) {
txt <- readLines(path)
tar_url_read <- function(name,
command,
read,
tidy_eval = targets::tar_option_get("tidy_eval"),
packages = targets::tar_option_get("packages"),
library = targets::tar_option_get("library"),
format = targets::tar_option_get("format"),
repository = targets::tar_option_get("repository"),
error = targets::tar_option_get("error"),
memory = targets::tar_option_get("memory"),
library(tidyverse)
salary_url <- "https://services1.arcgis.com/UWYHeuuJISiGmgXx/arcgis/rest/services/EmployeeSalaries_1/FeatureServer/0"
salary_service <- arcgislayers::arc_open(salary_url)
salary_table_src <- arcgislayers::arc_select(salary_service)
# pak::pkg_install("elipousson/baltimoredata")
salary_xwalk <- baltimoredata::entity_xwalk |>
library(d2r)
one_many <- c(
"Agency -> Service",
"Service -> Cost Center",
"Fund -> Cost Center",
"Award -> Grant",
"Revenue Category -> Budget Plan"
)
library(arcgislayers)
library(ggplot2)
county_vac <- arc_read(
"https://services.arcgis.com/njFNhDsUCentVYJW/arcgis/rest/services/MD_COVID19_VaccinationByCounty/FeatureServer/0"
)
county_vac |>
ggplot() +
geom_sf(
library(arcgislayers)
layer <- arc_open(
"https://geodata.md.gov/imap/rest/services/PlanningCadastre/MD_ComputerAssistedMassAppraisal/MapServer/1"
)
bldg_layer <- arc_open(
"https://geodata.md.gov/imap/rest/services/PlanningCadastre/MD_ComputerAssistedMassAppraisal/MapServer/0"
)
library(sharepointr)
drive <- get_sp_drive("<document library url>")
drive_files <- sp_dir_info(
drive = drive
)
drive_file_paths <- str_remove(drive_files[drive_files$isdir,]$name, "^/")
library(tidyverse)
library(gt)
library(sharepointr)
# url <- "https://<tenant>.sharepoint.com/:f:/r/sites/<site name>/<document library>/<path>"
file_list <- sp_dir_info(
url,
info = "all",
recurse = TRUE
@elipousson
elipousson / minixcali-d2r.R
Created April 4, 2024 02:55
Example script for converting an excalidraw diagram to a d2 diagram
library(dplyr)
library(rlang)
library(purrr)
# library(d2r)
library(minixcali)
path <- "Untitled-2024-03-28-1327.excalidraw"
file <- xkd_read(path, simplifyVector = TRUE)