Frequently Asked Questions
What is an Isochrone?
An isochrone is the area accessible from a point within a certain time threshold, given a particular method of travel. An isochrone (iso = equal, chrone = time) is defined as “a line drawn on a map connecting points at which something occurs or arrives at the same time”. This is also used interchangeably with “Walk/Bike/Drive Time” or “Travel Time”.
What is a Quadkey?
A quadkey refers to a roughly square patch on Earth that can be represented as a map tile. Quadkeys are two-dimensional tile XY coordinates that are combined into one-dimensional strings called quadtree keys, or “quadkeys” for short. Each quadkey uniquely identifies a single tile at a particular level of detail.
We use quadkeys as the smallest unit/boundary of analysis in our sample datasets.
How are quadkeys and isochrones related?
We provide features that refer to isochrone boundaries centered on a quadkey. For example,
poi_is_restaurant_count_qk_isochrone_walk_10m gives the number of restaurants within an area reachable via a 10-minute walk from the center of a quadkey. This feature is computed by aggregating data (restaurants) within a boundary (the 10-minute walk isochrone), centered on the pertinent quadkey. In the diagram above, the value of
poi_is_restaurant_count_qk_isochrone_walk_10m for quadkey
0231301203133331001 (outlined in yellow) is
3, because there are 3 restaurants (blue dots) that fall within the quadkey’s 10-minute walk isochrone (shaded in green).
If you were to visualize
poi_is_restaurant_count_qk_isochrone_walk_10m on a map, you’d notice that each quadkey/tile has its own feature value, and that the change in feature values between adjacent quadkeys is gradual. This is expected because the isochrone boundaries centered on adjacent quadkeys largely overlap.
Working with IggyEnrich
Why don't I see latitude and longitude in the dataset?
Our dataset represents places in terms of boundaries – from quadkeys (most fine-grained) to counties (coarse-grained). Each of the boundary tables that comes in our dataset has a
geometry column which defines the location (polygon) of each row.
If you want to use Iggy to create features for an input point (latitude/longitude), one way to do this is using the IggyEnrich python module. The primary use of the IggyEnrich class within this module is to enrich a user’s dataframe of points by mapping from input point (latitude/longitude) to the enclosing boundaries in order to retrieve the relevant features.
So let’s say you have a data frame containing points, and want to append a bunch of Iggy columns describing the vicinity of each point. Your data frame (
df in the line of code provided below) needs to have a latitude and longitude column specified:
iggy.enrich_df(df, latitude_col="latitude", longitude_col="longitude")
Behind the scenes, this code appends columns of Iggy features to
df by looking up the quadkey associated with each row’s “latitude” and “longitude”, and then mapping from that quadkey to the desired boundary (e.g. CBG or zip code).
What if my locations are addresses?
You will need to geocode your addresses (convert them from an address string into lat/lng coordinates) before using Iggy. There are a number of geocoding services available on the internet. Here are a few examples to get you started:
Working with Iggy Data
How do I load Iggy data and analyze it directly from BigQuery?
I tried to load the files as external tables in BigQuery, but the conversion of geo columns, such as
POLYGON, to Bigquery geography functions is not direct.
You can use the following query to import Iggy data into a BigQuery table:
create table <project>.<dataset>.<new_table> as ( select * EXCEPT (geometry), ST_GEOGFROMTEXT(geometry) as geometry from <project>.<dataset>.<external_table> );
How often is the ACS census data updated?
The ACS data we provide through Iggy refers to the most recently published 5-year estimates (currently 2014-2019). The data is collected over 5 years. The advantages of using 5-year estimates rather than 1-year estimates is improved statistical reliability, and coverage of geographic boundaries with small sample sizes.
Where do household income and house value data come from?
Household income and house value data come from the ACS.
In most cases we present ACS data using the bins published by the ACS. In some cases we combine multiple bins for consistency. If you need features with more fine-grained bins, please get in touch!
How do I get help using Iggy?
Email us at firstname.lastname@example.org with any questions you may have. Please include as much information as you can about your project and where you’re running into issues, as well as code samples where possible.