Craig Ulmer

Where Do Plane Owners Live?

2016-04-29 planes code

In addition to being an interesting source of data for plane statistics, the FAA registration dataset also provides address information for each plane's owner. I was curious to see who owned airplanes in my town (not just the drones), so I wrote a simple script to extract addresses in my zipcode from the database and convert them to geospatial coordinates. Below is a plot of all the registered plane owners for Livermore. I've also outlined different neighborhoods in town and colored them by how expensive their houses are. Unsurprisingly, people that own planes tend to live in wealthier neighborhoods.


Livermore has a busy municipal airport on the north-west side of town, with an east-west landing strip. Planes typically approach the airport by flying west over the city, using the railroad and I580 as visual guides to locate the airport. People that live east of the airport often complain about the noise of descending planes, but the airport was there long before the houses (it was built in 1965). In general, Livermore house prices increase the farther south you get. The cheap houses (where I live, in the yellow) start at about $500k. Down in Ruby Hill they're all well over $1M.

For the above plot, I shaded different parts of town based on how expensive their houses are: the darker green the color, the more wealthy the neighborhood. The shading wasn't very scientific- I just boxed up regions by hand and then looked up what Zillow said houses were going for in the neighborhood. Sadly, I found that my yellow-ish neighborhood had zero plane owners, which was consistent with other poorer neighborhoods. I think it's interesting that most of the plane owners live south of the landing path. I'm not sure if that's because that's where the more expensive houses usually are, or if plane owners are smart enough to know not to live long the flight path.

East Bay Owners

In addition to Livermore, I pulled out data on the neighboring areas (basically all of Alameda and Contra Costa counties). Below is a snapshot of it, but you can explore the data yourself in pannable Google map of the data.


The fun part of this project for me was learning how to do two new things. First, I had to figure out how to translate street addresses into geospatial coordinates. I found that the GeoPy library does all the hard work for you by submitting your queries to different web services that do this kind of translation. I initially queried to frequently and got my IP address temporarily blocked, so I added a three second delay between queries to be polite. The translations aren't perfect (the FAA data is fairly dirty), but they were good enough to handle the majority of my requests. Second, I needed a better way to plot points. Previously I've used Mapnik and Pylab to render maps, but they're tedious to script up properly. I hadn't tried Google's Maps API before, but I guessed it'd be easy since so many people use it. I signed up for my first API key, modified a Javascript example they provided, and it magically did everything I needed. I feel kind of silly for not messing with it sooner.

The script I used for extracting the data is, which I've put in my flight classifier repo. GeoPy needs a newer version of Python than what my CentOS 6 desktop had, so I had to build/install that as well.