{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Census API Example\n", "This example only works with an api key: https://www.census.gov/developers/.\n", "You can run it a limited number of times without a key; comment out block 2 and remove &key={api_key} from the data_url string in block 5" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "#Pull data from Population Estimates Vintage 2018\n", "%matplotlib inline\n", "import requests,pandas as pd" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "with open('census_key.txt') as key:\n", " api_key=key.read().strip()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "year='2018'\n", "dsource='pep'\n", "dname='components'\n", "cols='GEONAME,NATURALINC,DOMESTICMIG,INTERNATIONALMIG'\n", "state='42'\n", "county='017,029,045,091,101'\n", "#state='34'\n", "#county='005,007,015,021'" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'https://api.census.gov/data/2018/pep/components'" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "base_url = f'https://api.census.gov/data/{year}/{dsource}/{dname}'\n", "base_url" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[\"GEONAME\",\"NATURALINC\",\"DOMESTICMIG\",\"INTERNATIONALMIG\",\"state\",\"county\"],\n", "[\"Bucks County, Pennsylvania\",\"-178\",\"-605\",\"862\",\"42\",\"017\"],\n", "[\"Chester County, Pennsylvania\",\"1829\",\"-887\",\"1374\",\"42\",\"029\"],\n", "[\"Delaware County, Pennsylvania\",\"1374\",\"-2513\",\"1579\",\"42\",\"045\"],\n", "[\"Montgomery County, Pennsylvania\",\"1230\",\"-1987\",\"2315\",\"42\",\"091\"],\n", "[\"Philadelphia County, Pennsylvania\",\"8617\",\"-11796\",\"8904\",\"42\",\"101\"]]\n" ] } ], "source": [ "data_url = f'{base_url}?get={cols}&for=county:{county}&in=state:{state}&key={api_key}'\n", "response=requests.get(data_url)\n", "print(response.text)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | GEONAME | \n", "Natural Increase | \n", "Net Domestic Mig | \n", "Net Foreign Mig | \n", "
---|---|---|---|---|
fips | \n", "\n", " | \n", " | \n", " | \n", " |
42017 | \n", "Bucks County, Pennsylvania | \n", "-178 | \n", "-605 | \n", "862 | \n", "
42029 | \n", "Chester County, Pennsylvania | \n", "1829 | \n", "-887 | \n", "1374 | \n", "
42045 | \n", "Delaware County, Pennsylvania | \n", "1374 | \n", "-2513 | \n", "1579 | \n", "
42091 | \n", "Montgomery County, Pennsylvania | \n", "1230 | \n", "-1987 | \n", "2315 | \n", "
42101 | \n", "Philadelphia County, Pennsylvania | \n", "8617 | \n", "-11796 | \n", "8904 | \n", "