Bank Holiday Bodge: The Sentiment of Shakespeare

As much as we'd like to in order to appear cultured, it is likely that many of us just haven't found the time or motivation to get through the iconic Shakespeare plays we are all familiar with. I don't have a full solution for that, but at the very least, this post presents a way of understanding the general narrative arc of the plays from a quick glance.

An Analysis of Strange Timezones

Timezones are strange things. Be it Chatham Island's 45-minute offset or West Bank's ethnically divided use of daylight saving, it almost seems like the timezones of the world were chosen to baffle. In this post we ask which capital city has a timezone that differs the most from what would be expected given its longtitude. Any guesses?

Bank Holiday Bodge: Parametric Snowflakes

After yesterday's post drawing Christmas trees with Python, it's time to give R a chance to shine. In this post, I use the shiny and ggvis packages to build a webapp for generating parametric snowflakes.

Ordering Factors within a Faceted Plot

ggplot2 is an amazing tool for building beautiful visualisations using a simple and coherent grammar—that is, when it wants to play nice. Sadly, this is not always the case and one can find themselves developing strange workarounds to overcome the limitations of the package. This post discusses one of these approaches, used to facilitate the correct ordering of factors within a faceted plot.

Generating Normal Random Variables - Part 1: Inverse Transform Sampling

The normal distribution is one of the most important developments in the history of statistics. As well as its useful statistical properties, it is so well-loved for its omnipresence in the natural world, appearing in all sorts of contexts from epidemiology to quantum mechanics. This blog post, the first in a series of posts discussing how we can generate random normal variables, explores the theory behind and the implementation of inverse transform sampling.

Creating a Dynamic 8-Bit Wallpaper for Linux with Python

Your desktop wallpaper may be the one image that you see most often in a given day so its probably worth your time to make it look the best it can. In this post, I offer a template for a dynmically-changing 8-Bit wallpaper which automatically syncs itself to sunrise and sunset times, produced using Python and compatible with Linux.

Streamlining Your Data Science Workflow With Magrittr

The Tidyverse is here to stay so why not make the most out of it? The `magrittr` package extends the basic piping vocabulary of the core Tidyverse to facilitate the production of more intuitive, readable, and simplistic code. This post aims to be an all encompassing guide to the package and the benefits it provides.

Gloopy Violin Plots

The fourth dimension is often overlooked in data visualisation applications but, in doing so, are we potentially missing out on some more effective ways to present data? In this post, I argue that there are certain use cases where adding a temporal dimension to your visualation greatly improves the clarity of the result in expressing you message. Furthermore, I offer an example of such a visualisation, produced using the `gganimate` package.

Efficiently Removing Zero Variance Columns (An Introduction to Benchmarking)

There are many machine learning algorithms, such as principal component analysis, that will refuse to run when faced with columns of data that have zero variance. There are multiple ways to remove these in R, some much faster than others. In this post, I introduce some such methods and demonstrate how to use the `rbenchmark` package to evaluate their performance.

Beauty From Chaos

Starting a new blog is hard. Period. In this post, I discuss the issues I faced in writing my first blog piece and how I overcame these by producing a simple, yet full workable, Shiny web app. It may be only be a small way to start, but I hope that it will be the first step in a highly fruitful journey.
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now