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 / 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.
@MarkEdmondson1234
MarkEdmondson1234 / google-natural-language-js-sample.htlml
Last active June 5, 2019 21:25
Authenticate to Google Natural Language API via client side javascript
<html>
<head>
<script src="https://apis.google.com/js/api.js"></script>
<script>
function start() {
gapi.client.init({
'apiKey': 'XXXX',
'discoveryDocs': ['https://language.googleapis.com/$discovery/rest?version=v1beta1']
}).then(function() {
return gapi.client.language.documents.analyzeSentiment({
@MarkEdmondson1234
MarkEdmondson1234 / compareXMLtoGA.R
Last active November 11, 2023 00:25
Check 0 pageviews by comparing sitemap.XML URLs with Google Analytics visits.
library(googleAnalyticsR)
library(xml2)
library(dplyr)
ga_auth()
## date range of URLs to test
dates <- c(Sys.Date() - 30, Sys.Date())
##GA View ID
@MarkEdmondson1234
MarkEdmondson1234 / send_email_mailgun.R
Last active March 18, 2024 14:06
Send an email via an R function using Mailgun
#' Email a user a report is ready
#'
#' Requires an account at Mailgun: https://mailgun.com
#' Pre-verification can only send to a whitelist of emails you configure
#'
#' @param email Email to send to
#' @param mail_message Any extra info
#'
#' @return TRUE if successful email sent
#' @import httr
@MarkEdmondson1234
MarkEdmondson1234 / snippet_modules.R
Last active July 17, 2020 08:37
RStudio snippet to make a shortcut for Shiny Module scaffolding
snippet module
#' ${1:module_name} UI
#'
#' Shiny Module for use with \link{${1:module_name}}
#'
#' @param id Shiny id
#'
#' @return Shiny UI
${1:module_name}UI <- function(id){
sudo: required
dist: trusty
group: edge
language: ruby
services:
- docker
cache:
library(shiny)
dynamicSelectInput <- function(id, label, multiple = FALSE){
ns <- shiny::NS(id)
shiny::selectInput(ns("dynamic_select"), label,
choices = NULL, multiple = multiple, width = "100%")
}
@MarkEdmondson1234
MarkEdmondson1234 / dynamicSelectShinyModule.R
Last active November 21, 2020 00:09
Shiny modules for creating dynamic SelectInputs
library(shiny)
#' Safe subset
#'
#' @param df Dataframe
#' @param column One name of column to subset within
#' @param subset Vector of entries in column to subset to
#'
#' If column not in df, returns back the df
safeSubset <- function(df, column, subset){
@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')"
# devtools::install_github("hrbrmstr/vegalite")
library(vegalite)
library(htmltools)
dat <- jsonlite::fromJSON('[
{"a": "A","b": 28}, {"a": "B","b": 55}, {"a": "C","b": 43},
{"a": "D","b": 91}, {"a": "E","b": 81}, {"a": "F","b": 53},
{"a": "G","b": 19}, {"a": "H","b": 87}, {"a": "I","b": 52}
]')