blog

Batch CSV Geocoding in Python with Google Maps API

Geocode your addresses for free with Python and Google For a recent project, I ported the “batch geocoding in R” script over to Python. The script allows geocoding of large numbers of string addresses to latitude and longitude values using the Google Maps Geocoding API. The Google Geocoding API is one of the most accurate geocoding …

Batch CSV Geocoding in Python with Google Maps API Read More »

Using iloc, loc, & ix to select rows and columns in Pandas DataFrames

Pandas Data Selection There are multiple ways to select and index rows and columns from Pandas DataFrames. I find tutorials online focusing on advanced selections of row and column choices a little complex for my requirements. Selection Options There’s three main options to achieve the selection and indexing activities in Pandas, which can be confusing. The three selection cases and …

Using iloc, loc, & ix to select rows and columns in Pandas DataFrames Read More »

How often do you actually get wet going to work? Using pandas, python, and some graphs, we find out.

How wet is a cycling commute in Ireland? Pretty dry!… if you don’t live in Galway.

How often do you get wet cycling to work? Cycling in Ireland is taking off. The DublinBikes scheme is a massive success with over 10 million journeys, there’s large increases in people cycling in Irish cities, there’s a good cyclist community, and infrastructure is slowing improving around the country. However, Ireland is a rainy place! It turns out that …

How wet is a cycling commute in Ireland? Pretty dry!… if you don’t live in Galway. Read More »

Cyclist in the rain. Blog about python scraping data from wunderground rainfall data.

Analysis of Weather data using Pandas, Python, and Seaborn

The most recent post on this site was an analysis of how often people cycling to work actually get rained on in different cities around the world. You can check it out here. The analysis was completed using data from the Wunderground weather website, Python, specifically the Pandas and Seaborn libraries. In this post, I will …

Analysis of Weather data using Pandas, Python, and Seaborn Read More »

Amazon Elastic Beanstalk – Logging to Logentries from Python Application

[Short version] The S3 ingestion script for Amazon applications provided by Logentries will not work for the gzip compressed log files produced by the Elastic Beanstalk log rotation system. A slightly edited script will work instead and can be found on Github here.[/Short Version]   Logentries is a brilliant startup originating here in Dublin for collecting …

Amazon Elastic Beanstalk – Logging to Logentries from Python Application Read More »

Fixing Office 2016 installation for Mac – error code 0xD0000006

This is a very quick post to help some people out on installation problems with Office for Mac 2016. On an excited day of installation of Excel 2016 on my Macbook, the following error threatened to ruin the day: “An unknown error has occurred, the error code is: 0xD0000006” Seemingly unfound on the internet, the solution, oddly enough …

Fixing Office 2016 installation for Mac – error code 0xD0000006 Read More »

Summarising, Aggregating, and Grouping data in Python Pandas

Pandas – Python Data Analysis Library I’ve recently started using Python’s excellent Pandas library as a data analysis tool, and, while finding the transition from R’s excellent data.table library frustrating at times, I’m finding my way around and finding most things work quite well. One aspect that I’ve recently been exploring is the task of …

Summarising, Aggregating, and Grouping data in Python Pandas Read More »

Parallel programming allows you to speed up your code execution - very useful for data science and data processing

Using Python Threading and Returning Multiple Results (Tutorial)

Threading in Python is simple. It allows you to manage concurrent threads doing work at the same time. The library is called “threading”, you create “Thread” objects, and they run target functions for you. You can start potentially hundreds of threads that will operate in parallel. Speed up long running tasks by parallelising and threading computation where you can.