Skip to content

Instantly share code, notes, and snippets.

Avatar

Sharon Machlis smach

View GitHub Profile
@smach
smach / bitbucket-pipelines.yml
Last active January 25, 2023 18:48 — forked from ellisvalentiner/bitbucket-pipelines.yml
yaml to build R package for bitbucket pipelines continuous integration
View bitbucket-pipelines.yml
image: rocker/tidyverse:latest
pipelines:
default:
- step:
script:
- cd /opt/atlassian/pipelines/agent/build
- Rscript -e 'devtools::install_deps(".", dependencies=TRUE, upgrade=FALSE)'
- Rscript -e 'devtools::build()'
- Rscript -e 'devtools::install(upgrade_dependencies = FALSE)'
View mastodon_followers_and_lists_i_assigned_them_to.R
# get all people you follow on Mastodon and which lists you've assigned them to. Inspired by Jon Udell doing this with Steampipe, his blog post: https://blog.jonudell.net/2022/12/22/lists-and-people-on-mastodon/
library(rtoot) # need the dev version, and you need to have gotten and stored a user token
library(dplyr)
library(purrr)
library(magrittr)
library(glue)
# If you don't know your Mastodon account ID
my_display_name <- "YOUR DISPLAY NAME HERE"
@smach
smach / boston_snowfall.2000s.csv
Created July 14, 2022 18:33
Annual Boston Snowfall 2000-2016
View boston_snowfall.2000s.csv
Winter Total
2000-01 45.9
2001-02 15.1
2002-03 70.9
2003-04 39.4
2004-05 86.6
2005-06 39.9
2006-07 17.1
2007-08 51.2
2008-09 65.9
View wx_slideshow_functions.R
get_forecast_data <- function(city, forecast_url) {
req<-httr::GET(forecast_url)
json <- httr::content(req, as = "text")
weather_data <- jsonlite::fromJSON(json)
forecast_df <- weather_data$properties$periods
forecast_df <- forecast_df %>%
dplyr::mutate(
City = city,
Temp = if_else(isDaytime == TRUE, "High", "Low"),
Date = as.Date(substr(startTime,1,10)),
@smach
smach / everyn.R
Created July 28, 2021 15:32
Only display every n data point in ggplot2
View everyn.R
# Function to set all vector items to blank except for every nth item
everyn <- function(myvec, n){
myvec <- sort(unique(myvec))
for(i in 1:length(myvec)) {
if( i %% n != 1) {
myvec[i] <- ""
}
}
return(myvec)
View get_twitter_handles_from_google.R
library(rvest)
library(rio)
library(dplyr)
library(xml2)
# If your spreadsheet is named "data.xlsx" and the column with submitter names is named "submitting_lab"
data <- rio::import("data.xlsx") %>%
dplyr::pull(submitting_lab) %>%
unique()
@smach
smach / dt_combine_polygons.R
Created February 21, 2021 14:53
RStudio code snippet for combining smaller polygons (precincts) into larger polygons (City Council Districts)
View dt_combine_polygons.R
snippet mygis_dt_merge_districts_2_precincts
${1:my_geography} <- as.data.table(${1:my_geography})
${2:my_new_geography} <- fram2[, .(geometry = st_union(geometry)), by = ${3:larger_district}]
${2:my_new_geography} <- sf::st_sf(${2:my_new_geography})
# test plot
# ggplot(${2:my_new_geography}, aes(geometry=geometry)) +
# geom_sf()
View timeline_data.csv
State TotalDistributed TotalAdministered ReportDate Used PctUsed color
CT 740300 542414 2021-02-08 0.732694853437796 73.3 #3366CC
MA 1247600 806376 2021-02-08 0.646341776210324 64.6 #003399
ME 254550 178449 2021-02-08 0.701037124337065 70.1 #3366CC
NH 257700 166603 2021-02-08 0.646499805975941 64.6 #3366CC
NY 3378300 2418074 2021-02-08 0.715766509783027 71.6 #3366CC
RI 192300 120484 2021-02-08 0.626541861674467 62.7 #3366CC
VT 116075 90328 2021-02-08 0.778186517337928 77.8 #3366CC
CT 740300 533941 2021-02-07 0.721249493448602 72.1 #3366CC
MA 1247600 780268 2021-02-07 0.625415197178583 62.5 #003399
@smach
smach / election_night_live_model.R
Created October 31, 2020 18:25 — forked from elliottmorris/election_night_live_model.R
A live election-night prediction model using The Economist's pre-election forecast
View election_night_live_model.R
#' Description
#' This file runs a live election-night forecast based on The Economist's pre-election forecasting model
#' available at projects.economist.com/us-2020-forecast/president.
#' It is resampling model based on https://pkremp.github.io/update_prob.html.
#' This script does not input any real election results! You will have to enter your picks/constraints manually (scroll to the bottom of the script).
#'
#' Licence
#' This software is published by *[The Economist](https://www.economist.com)* under the [MIT licence](https://opensource.org/licenses/MIT). The data generated by *The Economist* are available under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/).
#' The licences include only the data and the software authored by *The Economist*, and do not cover any *Economist* content or third-party data or content made available using the software. More information about licensing, syndication and the copyright of *Economist* content can be fou
View dual-color-reactable.R
library(reactable)
library(dplyr)
red_pal <- function(x) rgb(colorRamp(c("#FFCDD2FF", "#C62828FF"))(x), maxColorValue = 255)
blue_pal <- function(x) rgb(colorRamp(c("#BBDEFBFF", "#1565C0FF"))(x), maxColorValue = 255)
mtcars %>%
select(cyl, mpg) %>%
reactable(
pagination = FALSE,