EcoHealth Alliance seeks a research software engineer to build and maintain technical infrastructure to support scientific research across our field, lab, and computational teams. We are seeking someone with the ability to learn and use a variety of system administration and development operations tools, and to work with a diverse, multi-disciplinary team that includes scientists from across the globe. This is a key position at a rapidly growing NGO with diverse funded scientific research programs around the world focused on conservation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Testing missing data strategies with mgcv | |
library(mgcv) | |
library(MRFtools) # github.com/noamross/MRFtools | |
library(tidyverse) | |
# Simulate data with missing parts | |
n <- 350;set.seed(2) | |
dat <- gamSim(1,n=n,scale=3) ## 1 or 7 | |
drop <- sample(1:n,300) ## to | |
for (i in 2:5) dat[drop[1:75+(i-2)*75],i] <- NA |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# A Targets workflow to nuke your Twitter data | |
# Still working around some rate limits, | |
# I suggest building each of the deletion targets | |
# individually, e.g., "tar_make(blockunblock)" | |
# Load packages required to define the pipeline: | |
library(targets) | |
library(tarchetypes) | |
library(tidyverse) | |
library(rtweet) | |
library(jsonlite) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
QUANTITATIVE ECOLOGY RESEARCH SCIENTIST | |
https://www.ecohealthalliance.org/career/quantitative-ecology-research-scientist | |
EcoHealth Alliance is seeking a quantitative ecologist to work closely with our team on multiple projects studying bat-borne zoonotic viruses. We are seeking someone with excellent statistical and computational skills, strong communication skills, and the ability to work with a diverse, multi-disciplinary team that includes scientists from across the globe. This is a key position at a rapidly growing NGO with diversely funded scientific research programs around the world focused on conservation and zoonotic disease emergence. This position requires experience with, and an ability to learn, a variety of ecological and epidemiological statistical techniques including generalized linear and additive, spatiotemporal, mixed-effect, Bayesian mixture and occupancy models, as well as proficiency with R and reproducible methods. Responsibilities include leading analysis of longitudinal and spatial |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(mgcv) | |
library(spdep) | |
library(sf) | |
library(ggplot2) | |
# Columbus crime data from mgcv/spdep | |
example(columbus) | |
# Make a neighborhood object compatible with mgcv's MRF | |
nb <- poly2nb(columbus) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(ggplot2) | |
dat <- data.frame(a = letters[1:10], b = exp(rnorm(10))) | |
ggplot(dat, aes(x = a, y = b)) + geom_col() + scale_y_log10() # Basic log scale transform | |
trans = scales::trans_new("logshift", \(x) log10(x*10), \(x) (10^x)/10) # Custom transformation | |
ggplot(dat, aes(x = a, y = b)) + geom_col() + scale_y_continuous(trans = trans) # Use custom transformation | |
ggplot(dat, aes(x = a, y = b)) + geom_col() + scale_y_continuous(trans = trans, breaks = c(0.25, 0.5, 1, 2, 4, 8)) # Add breaks | |
ggplot(dat, aes(x = a, y = b)) + | |
geom_col() + |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(sys) | |
library(RMariaDB) | |
library(DBI) | |
library(withr) | |
# Clean up from previous session | |
unlink("doltdb", recursive = TRUE) | |
try(dbDisconnect(conn), silent = TRUE) | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(leaflet) | |
library(tidyverse) | |
outline <- quakes[chull(quakes$long, quakes$lat),] | |
map <- leaflet(quakes) %>% | |
addTiles(group = "OSM (default)") %>% | |
# Overlay groups | |
addCircles(~long, ~lat, ~10^mag/5, stroke = F, group = "Quakes") %>% | |
addPolygons(data = outline, lng = ~long, lat = ~lat, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(ggplot) | |
library(sf) | |
library(ggspatial) | |
library(snapbox) | |
library(raster) | |
worldclim <- raster::getData('worldclim', var='prec', res=2.5, lon = 142.61, lat = -23.64) | |
area <- st_bbox( | |
c(xmin = 101.03, ymin = -44.82, xmax = 168.23, ymax = -9.09), |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
funzip $1| # uncompress first file in zip | |
tr -d '\000' | #remove null characters | |
sed "/^\s*$/d; s/ \{1,\}\t/\t/g; s/\t \{1,\}/\t/g; s/\r//" | #removes empty lines, whitespace around tabs, extra newlines | |
cut -s -f 1,3,4,5,6,8,12,13,14,15,16,17,18,19,20,21,23,24,25,26,34,35,36,38,40,42,44,45,46,85,86,87,88,89 #| #only select certain columns | |
pv -N Process -c | | |
gzip -9 | | |
pv -N Compress -c > $1.gz |