Integration Tricks using the Exponential Distribution

Not all integrals are created equally. In this post we look at a particular class of integrals which can be highly troublesome to evaluate. Thankfully, probability theory provides us with a framework that allows us to avoid the standard method of evaluation and by doing so makes our working far less error-prone.

Rethinking the T9 Typing Layout

Using an old number-pad mobile phone to send a text has to be one of the most strenuous and irritating tasks of the first world. In this post - although far too late to be of any use - I attempt to optimise the layout used on these phones to increase typing efficiency for a range of European languages.

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.

Binomial Recursion

In this post, we take a simple coin-flipping puzzle and through scope-expansion and generalisation, turn it into a monster probability problem that we can be proud to have tackled. In it, we look at some clever techiques for calculating probabilities which are vital in any experienced statistian's toolbox.

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