Skip to content

Instantly share code, notes, and snippets.

View MarkEdmondson1234's full-sized avatar
🦑
Tappity tap tap

Mark Edmondson MarkEdmondson1234

🦑
Tappity tap tap
View GitHub Profile
@MarkEdmondson1234
MarkEdmondson1234 / global.R
Created December 1, 2017 16:39 — forked from raymondben/global.R
gauth shiny example
library(googleAuthR)
library(shiny)
library(shinyjs)
@MarkEdmondson1234
MarkEdmondson1234 / google_calendar_demo.R
Last active October 2, 2017 23:30
A demo of calling Google Calendar API
library(googleAuthR)
## set scopes for calendar
options(googleAuthR.scopes.selected = "https://www.googleapis.com/auth/calendar.readonly",
googleAuthR.client_id = "XXXX", ## add your Google project client Id
googleAuthR.client_secret = "XXXX") ## add your Google project client secret
## make sure calendar API is activated for your Google Project at below URL:
# https://console.cloud.google.com/apis/api/calendar-json.googleapis.com/overview
@MarkEdmondson1234
MarkEdmondson1234 / dygraph_plot.r
Last active May 31, 2017 08:53
An example of rendering a Dygraph plot in Shiny
## in server.r
output$null_plot <- renderDygraph({
## don't output anything unless you have the data ready
validate(
need(casualImpactData(), "Model Working")
)
## the data for the plot is in here
ci <- casualImpactData()$series
@MarkEdmondson1234
MarkEdmondson1234 / knit_cloudstorage.rmd
Created April 21, 2017 07:53 — forked from mwhitaker/knit_cloudstorage.rmd
Use googleCloudStorageR to automatically upload to Cloud Storage
---
title: "Host image files on Google Cloud storage"
author: "Michael Whitaker"
date: "January 12, 2017"
output:
html_document:
self_contained: false
---
```{r setup, include=FALSE}
@MarkEdmondson1234
MarkEdmondson1234 / job-spec-iihnordic.txt
Last active April 12, 2017 15:34
IIH job description
I am looking for an enthusiastic self-motivated junior data programmer or student to help with my projects.
You are needed to work on an exciting backlog of innovation projects with me and the rest of the team at IIH Nordic.
Ideally you will be knowledgeable in R, Python, JS, Google Cloud and experience working with digital marketing APIs,
but if you only know one of those and are willing to learn that's a good start - that’s how I started.
Please be ready to show some practical experience, thoughts or projects based on the above.
IIH Nordic offers a 4 day workweek and exciting prospects.
Will consider remote or based out of our office in Copenhagen, Denmark.
sudo: required
dist: trusty
group: edge
language: ruby
services:
- docker
cache:
@MarkEdmondson1234
MarkEdmondson1234 / RMessages.sh
Created March 21, 2016 16:04
Write R messages in StOut to a file
Rscript -e "setwd('/srv/shiny-server/xxxxx/'); zz<-file('rscript.log', open='wt');sink(zz, type = 'm'); rmarkdown::render('getData.Rmd')"
@MarkEdmondson1234
MarkEdmondson1234 / downloadSearchAnalytics.R
Last active March 2, 2016 13:49
demo on how to download and archive search analytics data using searchConsoleR
## A script to download and archive Google search analytics
##
## Demo of searchConsoleR R package.
##
## Version 1 - 10th August 2015
##
## Mark Edmondson (http://markedmondson.me)
## load the required libraries
## (Download them with install.packages("googleAuthR") and install.packages("searchConsoleR" if necessary
library(idbr) # devtools::install_github('walkerke/idbr')
library(ggplot2)
library(animation)
library(dplyr)
library(ggthemes)
idb_api_key("Your Census API key goes here")
male <- idb1('JA', 2010:2050, sex = 'male') %>%
mutate(POP = POP * -1,
@MarkEdmondson1234
MarkEdmondson1234 / costdata.gs
Created February 15, 2016 14:15 — forked from chipoglesby/costdata.gs
Cost Data Upload via Google Analytic's Management API with Google Sheets
function uploadData() {
var accountId = "xxxxxxxx";
var webPropertyId = "UA-xxxxxxxx-x";
var customDataSourceId = "xxxxxxxx";
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var maxRows = ss.getLastRow();
var maxColumns = ss.getLastColumn();
var data = [];
for (var i = 1; i < maxRows;i++) {
data.push(ss.getRange([i], 1,1, maxColumns).getValues());