Skip to content

Instantly share code, notes, and snippets.

View laurakwiley's full-sized avatar

Laura Wiley laurakwiley

View GitHub Profile
install.packages(c("tidyverse","DT","shinythemes", "shiny"))
@laurakwiley
laurakwiley / filter_datetimes.R
Created January 18, 2016 18:50
Filter Dates and Time ranges in R
ENTRY_DATE %within% new_interval(min_time, max_time)
library(magrittr)
library(tidyr)
library(dplyr)
library(ggplot2)
data <- data.frame(PT_ID = c(23, 23, 23, 23, 100, 100, 100, 100),
DATETIME = c("1/1/2013 9:38", "8/9/2014 15:42", "1/1/2013 9:38", "8/9/2014 15:42", "12/21/2011 12:10", "8/9/2013 11:18", "12/21/2011 12:10", "8/9/2013 11:18"),
MoCA_total = c("MHSMOCA:MOCATOTAL = 25", "MHSMOCA:MOCATOTAL = 22", NA, NA, "MHSMOCA:MOCATOTAL = 21", "MHSMOCA:MOCATOTAL = 25", NA, NA),
Total_Correct = c(NA, NA, "MHSWLM:CORRECT = 15", "MHSWLM:CORRECT = 20", NA, NA, "MHSWLM:CORRECT = 18", "MHSWLM:CORRECT = 24")) %>% tbl_df()
library(magrittr)
library(tidyr)
library(dplyr)
data <- data.frame(Var1 = c("MHSMOCA:MOCATOTAL = 24", "MHSMOCA:MOCATOTAL = 24.5","MHSMOCA:MOCA7TOTAL = 24")) %>% tbl_df()
# Option 1: Use a variable splitting function from tidyr
## tidyr::separate takes the column you want to split on, what you want the new column names to be, what the separating text is, and whether you want to change data types after separation (so here rendering the number as a dbl or int)
data %>%
separate(col = Var1, into = c("Text","Number"), sep = "=", convert = TRUE)
@laurakwiley
laurakwiley / identifying_sessions.R
Created December 3, 2015 04:14
A simple way to group timestamped data by an arbitrary maximum amount of time between events. Inspired by this (http://stackoverflow.com/a/32248462) Stack Overflow answer.
# Load helpful packages
library(lubridate)
library(dplyr)
# Sample Data
data <- structure(list(X1 = c("kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov","kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "atl1.america.net", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "atl1.america.net", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kenneth.lerc.nasa.gov", "kennet
@laurakwiley
laurakwiley / server.R
Last active November 12, 2015 05:08
AMIA 2015 Using R for Healthcare Data Science - Case Study 1 Shiny App
library(shiny)
shinyServer(function(input, output){
library(dplyr)
library(tidyr)
input_model <- eventReactive(input$calc, {
data.frame(Age = input$age,
Race = input$race,
VKORC1 = input$vkorc1,
@laurakwiley
laurakwiley / ARL Library Investment Index - dplyr example
Created October 5, 2015 17:47
A dplyr version of the ARL Library Investment Index example in the Intro to R and Shiny Tutorial (https://github.com/HeardLibrary/workshops/blob/gh-pages/_posts/2015-10-02-intro-to-r-and-shiny.md)
library(ggplot2)
library(scales)
library(dplyr)
library(stringr)
arl <- read.csv(file = "index13.csv",header = TRUE,skip = 1) %>%
tbl_df() %>% ## turn into tbl_df
select(Institution = Institution.Name.1,
Total = Total.Library.Expenditures,
Salaries = Salaries...Wages.Professional.Staff,