Shiny Applications

London Housing Bang for your Buck

06 November 2017

An interactive map of the relative value-for-money of housing in London, based on the estimated cost-per-room in each property sold in the past five years and the level of public transport accessibility. Allows for subdividing by housing type, travel zone, transport accessibility level, local authority, and more! Builds on this blog post, and prompted by a request from my former colleague Mark Butcher.

Cycling vs Public Transit App

28 April 2017

Live (as in updated every few days) data on the cost of my bike and a pay-as-you-go Oyster card, vs a hypothetical monthly Oyster card. Inspired by this blog post.

When Politicians Discuss Disability

24 March 2017

An interactive blog post, originally written for Disability Rights UK’s blog, tracking the frequency that words and phrases related to disability issues are discussed in the UK parliament from 1936–2016.

Map of Disability Sport Providers

10 November 2016

An interactive map of all charities in the England and Wales charity commission that list both disabled people and amateur sport as areas of focus in their filings with the Charity Commission. This map was created to support the Get Yourself Active programme at Disability Rights UK. Last updated March 2017.

England Turnout

25 October 2016

A model for exploring what impact different electoral turnout scenarios would have on the seat distribution in the 2015 General Election in England. Initially inspired by the possibility raised by Jeremy Corbyn’s election as Labour Party leader that Labour would attempt to win the next election by focusing on increasing voter turnout. The first proper Shiny app I made, and no longer hosted online. To see this app, open R and run shiny::runUrl("")

R Packages


License: MIT CRAN\_Status\_Badge GitHub tag DOI

An ironically named R package to automatically fetch data from the UK Parliament API. Available on CRAN and GitHub.


License: MIT CRAN\_Status\_Badge GitHub tag DOI

An R package for downloading data from the Members’ Names Information Service API operated by the UK Parliament. Available on CRAN and GitHub.


License: MIT CRAN_Status_Badge GitHub tag DOI

A collection of tools, datasets and maps for analysing UK politics, including a hexagonal cartogram of Westminster constituencies. Available on CRAN and GitHub.


License: MIT GitHub tag DOI

emisc is a collection of miscellaneous functions I wrote that may or may not be useful, and that may or may not duplicate existing work. They include clearing byte order marks out of text data and writing R data to LaTeX line by line, rather than as a table. Currently only available on GitHub


License: MIT GitHub tag DOI

nomisr is for accessing Nomis data – UK labour market statistics, census data and other population data – with R. Currently only available on GitHub


Hansard Speeches and Sentiment

Creative Commons License DOI

The hansard_senti_post_V250 dataset contains 2,196,175 speeches and 382,484,493 words, representing every speech made in the House of Commons between the 1979 general election and the end of 2017, with information on the speaking MP, their party, gender, birth date, starting and finishing dates (if applicable) as an MP, and age at the time of the speech. It also includes seven different sentiment classifications for those speeches. It is distributed under a Creative Commons 4.0 BY-SA licence. It can be accessed through Zenodo, and is distributed under a Creative Commons 4.0 BY-SA license. The latest version expands coverage to the end of 2017, corrects several thousand spelling errors and includes two new sentiment classification methods. Click here for more details, or download the data from Zenodo.