{ "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", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
GEONAMENatural IncreaseNet Domestic MigNet Foreign Mig
fips
42017Bucks County, Pennsylvania-178-605862
42029Chester County, Pennsylvania1829-8871374
42045Delaware County, Pennsylvania1374-25131579
42091Montgomery County, Pennsylvania1230-19872315
42101Philadelphia County, Pennsylvania8617-117968904
\n", "
" ], "text/plain": [ " GEONAME Natural Increase Net Domestic Mig \\\n", "fips \n", "42017 Bucks County, Pennsylvania -178 -605 \n", "42029 Chester County, Pennsylvania 1829 -887 \n", "42045 Delaware County, Pennsylvania 1374 -2513 \n", "42091 Montgomery County, Pennsylvania 1230 -1987 \n", "42101 Philadelphia County, Pennsylvania 8617 -11796 \n", "\n", " Net Foreign Mig \n", "fips \n", "42017 862 \n", "42029 1374 \n", "42045 1579 \n", "42091 2315 \n", "42101 8904 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data=response.json()\n", "df=pd.DataFrame(data[1:], columns=data[0]).\\\n", " rename(columns={\"NATURALINC\": \"Natural Increase\", \"DOMESTICMIG\": \"Net Domestic Mig\", \"INTERNATIONALMIG\":\"Net Foreign Mig\"})\n", "df['fips']=df.state+df.county\n", "df.set_index('fips',inplace=True)\n", "df.drop(columns=['state','county'],inplace=True)\n", "df=df.astype(dtype={'Natural Increase':'int64','Net Domestic Mig':'int64','Net Foreign Mig':'int64'},inplace=True)\n", "df" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "fips\n", "42017 79\n", "42029 2316\n", "42045 440\n", "42091 1558\n", "42101 5725\n", "dtype: int64" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Total population change 2017-2018\n", "df.sum(axis=1)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, '')" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAEICAYAAACuxNj9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deZgU1dn38e/NjoDsRgUVUIwygiMCoqJi4EEUFQUEUQP4qoBbFDSG5EkQtyRGDajog2gUNEZEcCHuKyoKsgiiLEbEIaAGAQEhgAhzv3/U6aEZeqZ6hplpYH6f6+prqk+dOnXqVHfddaqqz5i7IyIiUpgKma6AiIjs+RQsREQkloKFiIjEUrAQEZFYChYiIhJLwUJERGIpWMg+wcx+ZmbvmdkGM7sn0/VJMDM3syOKuezFZvZ6SdcpzXXnmFnnTKxb9kwKFmXMzC4ys9lmttHMvjWzV8ysQ6brVVZ25+AZYyCwGtjf3W9Isd5xZrY1tPv3ZvaGmR1VCvUoFjNrEtqmUiLN3Z909y6ltL79zWyUmf07tMmS8L5BaayvNJhZ+7AfvzezVWb2jJkdlDTfzOxOM1sTXn8xM0uaP9bMPjezXDMbkK/sMaFdEq8fzWxDIXU5xsxeM7PVZrbLj9fC/n3ZzNaa2X/MbHTyvt4bKFiUITMbCowC/gj8DDgUeBDonsl67SMOAxZ64b8y/Yu71wQaA98B48qiYnsaM6sCvAVkAV2B/YGTgDVAuwxWrajqAmOBJkT7fwPwWNL8gcB5wLFAK+BsYFDS/E+Aq4CP8xfs7oPdvWbiBTwFPFNIXX4CJgKXFTD/QaLP3EFANnBaWPfew931KoMXUBvYCFxQSJ6qRMHkm/AaBVQN8zoCK4CbiD503xJ9Ec4C/gV8D/wuqawRwCTgaaIv0cfAsUnzjwamAuuABcC5SfPGAQ8AL4VlPwIOT5p/FPBGWOfnQO90lgXeAxz4b2iLPkAD4MVQj++B94EKBbTPScAsYH34e1LSOn8CtoZyO6dYdhxwe9L7bsDGIrT774h6LjnAxUnlTAUuT3o/AJiW9N6BI5LWORf4AVgOjEjK9++Qd2N4nZiirJTbn1SP24APQru/DjQooB0vB1YCNQv5LOYANwLzw/qeBqqFeXXDPlsFrA3TjdOtC9APWEYUnP4Q1tU5zKsADAO+DPMnAvXS/I61BjYkvf8QGJj0/jJgRorlpgEDCim3RtiO09KowxGAp0hfBJyV9P4u4KGyPAbt7ivjFSgvL6IzuG1ApULy3ArMAA4AGoYP+21hXsew/HCgMnBF+LL+A6hFdJa4BWgW8o8gOoD2CvlvBL4K05WBJUQHwCrAL8KX4edh2XFEB+52QCXgSWBCmFeD6EB3aZjXmuggmhW3bJifd/AM7/8EjEmq1ymApWibeuHA9MtQbt/wvn7Sem8vpG3z5gM1Q7u9X4R2/ytRUDmNKNgl2moq6QeLjkBLogNiK6ID9nlhXpOQt1KqstLY/qlEB9gjgerh/Z8LaIsJwPiYz2sOMBM4OKx7ETA4zKsP9AT2I/rsPQM8n7RsgXUBWhAFww5En727iT6niWBxfdgXjUN7PwQ8leZ37HqSggFRkDsh6X0bkoJJUnpcsOgHLCXF5zJF3oKCxWDg8dBmjYDPgPMzfVwqykuXocpOfWC1u28rJM/FwK3u/p27rwJuITo4JPwE3OHuPxF94RsA97r7BndfQNRDaJWUf467Twr5/wpUA9qHV02iL/BWd3+b6Oywb9Kyz7r7zFDfJ4m6zhB15XPc/TF33+buHwOTiYJS3LKp/ETUNT/M3X9y9/c9fLvy6QZ84e5PhPU+BSwGzimk7PxuNLN1RIGyJtHBGOLbHeAP7v6ju79L1GvqXYT1AuDuU939U3fPdff5RJc2Tktz8XS2/zF3/5e7byY6Iy+o3esT9Uzj3Ofu37j798A/E+W5+xp3n+zum9x9A3BHiu0oqC69gH+6+zR330p08pO8vwcB/+vuK9z9R6KTnl5x1/fNrFUo69dJyTWJAkbCeqBm8n2LNPUHHi/gc5mud4lO6H4g6qnOBp7fjfLKnIJF2VkDNIj50B9M1D1PWBbS8spw9+1henP4uzJp/maiL0jC8sSEu+cSfUgPDq/lIS15XY2S3v8naXpTUrmHASeY2brEi+hge2Aay6ZyF9HB+3UzW2pmwwrIl79tUtU5zt3uXsfdD3T3c939ywLKzt/ua939v4XMT4uZnWBm74SbseuJzjbTvaGczvan2+5riAJ0nJTlmdl+ZvaQmS0zsx+ILi/WMbOKadTlYHb+XG4K9Uk4DHgu6bO1CNhOdI8vpfDAxCvAde7+ftKsjUT3YxL2J7r0mPZB38wOIQqEjyelXZx04/uVNMqoALwGPEvUM29AdCnvznTrsSdQsCg704kuE51XSJ5viL4sCYeGtOI6JDERPrCN2XFd/pCQlryur9MocznwbjjoJl413f3K4lQw9IpucPdmRGfJQ82sU4qs+dumKHWOE9fudc2sRgHz/0t0aSEhOWjm9w9gCnCIu9cmuvyWOMuNO4CV5Pa/CZyRb5uK4gbg50SXePYHTg3p6Zyxf0v0OYwWMKtO1NNJWA6cme/zVc3dU26nmR1GtD23ufsT+WYvILq5nXBsSCuKfsCH7r40keDRU2qJm99nplFGPaLv4ujQO11DdCP+rCLWJaMULMqIu68n6iY/YGbnhbOzymZ2ppn9JWR7Cvi9mTUMjzAOB/6+G6s93sx6hN7M9cCPRNeDPyI6yN0U6tCR6EA9IY0yXwSONLNfhmUrm1lbMzs6zTqtBJol3pjZ2WZ2RLg08APRWeT2FMu9HNZ7kZlVMrM+RNe/X0xzvYVJp91vMbMqZnYK0aW4xJMx84AeYX8eQcFPw0B0ff97d99iZu2Ai5LmrQJySWqbfEpy+58gOihPNrOjzKyCmdU3s9+ZWToHsFpEvdh1ZlYPuLkI654EnGNmJ4Wnsm5h5yAzBrgjBAHCPkn5tKCZNQLeBh5w9zEpsjxOdPLRyMwOJgpy45KWr2Jm1cL6K5tZtXwnUBAFi3HECI/pViO6D0MoqyqAu68mul94Zdh3dYgubX0SV+6eRMGiDLn7X4GhwO+JDg7LgWvYce3ydqJrmfOBT4meYLp9N1b5AtETR4kboz3CfYGtwLnAmUQ3px8E+rn74jS2YQPQBbiQ6Gz3P0Td6app1mkEMD5cZugNNCc6M9xI1Pt60N2npljvGqKD9A1Ely1uAs4OX8TdFdfu/yFqw2+I7sEMTmqrkURPYa0Exof5BbkKuDU8rz+c6Fo+kHc55g7gg9A27ZMXLMntD/cCOhPd83iDKEjPJLo88lEaRYwiunG9mujk49UirHsBcC3Ricm3RA9WfEd0IgNwL1Hv6/XQTjOAEwoo7nKi4Hpz8m8ikuY/RHSv5VOiG8ovhbSE14mC3klEj+BuZkcvCTM7kagXVNgjswmHheUTPZfNRE8KJvQgeshlFdFl123AkDTK3WPY7t2zkT2VmY0gegrnkkzXZW8Wel1/d/fGcXml6MysJtFj083d/atM10cKpp6FiJQpMzsnXLarQfTo7KdEj+rKHkzBQkTKWnd2PGjRHLhwNx9LlTKgy1AiIhJLPQsREYm1V416WBQNGjTwJk2aZLoaIiJ7lTlz5qx294b50/fZYNGkSRNmz56d6WqIiOxVzCz/SAGALkOJiEgaFCxERCSWgoWIiMTaZ+9ZpPLTTz+xYsUKtmzZkumqSBmoVq0ajRs3pnLlypmuisher1wFixUrVlCrVi2aNGlC0Ye0l72Ju7NmzRpWrFhB06ZNM10dkb1euboMtWXLFurXr69AUQ6YGfXr11cvUqSElKtgAShQlCPa1yIlp9wFCxERKbpydc8ivybDXirR8nL+3C02j5kxdOhQ7rnnHgDuvvtuNm7cyIgRIwpcZurUqVSpUoWTTjqppKqa96PFBg0apJUuIpnRcnzLtPN+2v/TUquHehZlrGrVqjz77LOsXp3+/6yZOnUqH374YZHWs317qn82VzYyuW4RKR0KFmWsUqVKDBw4kJEjR+4y75///CcnnHACxx13HJ07d2blypXk5OQwZswYRo4cSXZ2Nu+//z4DBgxg0qRJecvVrFkTiILK6aefzkUXXUTLltHZyHnnncfxxx9PVlYWY8eOTbueOTk5HH300VxxxRVkZWXRpUsXNm/eDMCSJUvo3Lkzxx57LK1bt+bLL79Mue6///3vtGvXjuzsbAYNGpQXRK688kratGlDVlYWN9+84z9yDhs2jBYtWtCqVStuvPFGAFatWkXPnj1p27Ytbdu25YMPPihKc4tICSnXl6Ey5eqrr6ZVq1bcdNNNO6V36NCBGTNmYGY88sgj/OUvf+Gee+5h8ODB1KxZM+8A+re//a3AsmfOnMlnn32W97joo48+Sr169di8eTNt27alZ8+e1K9fP616fvHFFzz11FM8/PDD9O7dm8mTJ3PJJZdw8cUXM2zYMM4//3y2bNlCbm4uy5cv32ndixYt4umnn+aDDz6gcuXKXHXVVTz55JP069ePO+64g3r16rF9+3Y6derE/Pnzady4Mc899xyLFy/GzFi3bh0A1113HUOGDKFDhw78+9//5owzzmDRokXFaXaRUlWUy9rpXLLe0yhYZMD+++9Pv379uO+++6hevXpe+ooVK+jTpw/ffvstW7duLdbvA9q1a7fTcvfddx/PPfccAMuXL+eLL75IO1g0bdqU7OxsAI4//nhycnLYsGEDX3/9Neeffz4Q/fAt1brfeust5syZQ9u2bQHYvHkzBxxwAAATJ05k7NixbNu2jW+//ZaFCxfSokULqlWrxuWXX063bt04++yzAXjzzTdZuHBh3jp++OEHNmzYQK1atYrcNiJSfAoWGXL99dfTunVrLr300ry0a6+9lqFDh3LuuecyderUAm96V6pUidzcXCD68dnWrVvz5tWoUSNveurUqbz55ptMnz6d/fbbj44dOxbpdwdVq1bNm65YsSKbN2+msH+Wlbxud6d///786U9/2inPV199xd13382sWbOoW7cuAwYMYMuWLVSqVImZM2fy1ltvMWHCBEaPHs3bb79Nbm4u06dP3ymoikjZ0z2LDKlXrx69e/fe6ZLS+vXradSoEQDjx4/PS69VqxYbNmzIe9+kSRPmzJkDwAsvvMBPP/2Uch3r16+nbt267LfffixevJgZM2bsdr33339/GjduzPPPPw/Ajz/+yKZNm3bJ16lTJyZNmsR3330HwPfff8+yZcv44YcfqFGjBrVr12blypW88sorAGzcuJH169dz1llnMWrUKObNmwdAly5dGD16dF65iXQRKVvlumeR6euGN9xww04HwhEjRnDBBRfQqFEj2rdvz1dffQXAOeecQ69evXjhhRe4//77ueKKK+jevTvt2rWjU6dOO53RJ+vatStjxoyhVatW/PznP6d9+/YlUu8nnniCQYMGMXz4cCpXrswzzzyzS54WLVpw++2306VLF3Jzc6lcuTIPPPAA7du357jjjiMrK4tmzZpx8sknA7Bhwwa6d+/Oli1bcPe8BwDuu+++vHs827Zt49RTT2XMmDElsh0ikr599n9wt2nTxvP/86NFixZx9NFHZ6hGkgna51JWSusGd1n/zsLM5rh7m/zpugwlIiKxFCxERCSWgoWIiMRSsBARkVgKFiIiEkvBQkREYpXr31kwonYJl7c+NktJD1E+btw4fv3rX9O4cWM2btxIs2bNuPnmm0t0OPN0jRs3ji5dunDwwQcDcPnllzN06FBatGgRu2xiIMJHHnmEyy67DIC5c+fSunVr7rrrLm688UaGDx/OqaeeSufOnUt1O0RkV+pZlLHSGKK8T58+zJ07ly+++IJhw4bRo0ePjAy2N27cOL755pu894888khagSKhZcuWPP3003nvJ0yYwLHHHpv3/tZbb1WgEMkQBYsyVtgQ5amG4041RHlhTj/9dAYOHJg3HPm8efNo3749rVq14vzzz2ft2rUAdOzYkSFDhnDqqady9NFHM2vWLHr06EHz5s35/e9/n1deqmHGt2/fzoABAzjmmGNo2bIlI0eOZNKkScyePZuLL76Y7OxsNm/eTMeOHUn8MPLVV1+ldevWHHvssXTq1Cll3Q899FC2bNnCypUrcXdeffVVzjzzzLz5yUOzv/zyyxx11FF06NCBX/3qV3kDD4pI6Sjfl6EypKAhygsajjv/EOVxWrduzUMPPQRAv379uP/++znttNMYPnw4t9xyC6NGjQKgSpUqvPfee9x77710796dOXPmUK9ePQ4//HCGDBnCd999l3KY8aysLL7++ms+++wzANatW0edOnUYPXo0d999N23a7Pzjz1WrVnHFFVfw3nvv0bRpU77//vsC696rVy+eeeYZjjvuOFq3br3TYIYJW7ZsYdCgQXnl9e3bN612EZHiU7DIgIKGKC9oOO6iSgzhsn79etatW8dpp50GQP/+/bngggvy8p177rlAdPknKyuLgw46CIBmzZqxfPlypk2blnKY8XPOOYelS5dy7bXX0q1bN7p06VJofWbMmMGpp56aN3x5vXr1Cszbu3dv+vTpw+LFi+nbt2/Ky2+LFy+mWbNmeeX17du3SP/YSUSKTsEiQ1INUV5Sw3HPnTs3rfGQEmftFSpU2OkMvkKFCmzbtq3AYcYBPvnkE1577TUeeOABJk6cyKOPPlrgetwdM0ur7gceeCCVK1fmjTfe4N57700ZLPbV8cxE9mS6Z5EhqYYoL2g47vxDlBfm3XffZezYsVxxxRXUrl2bunXr5t3neOKJJ/J6GekoaJjx1atXk5ubS8+ePbntttv4+OOPC63niSeeyLvvvps3im5hl6EgupF95513UrFixZTzjzrqKJYuXUpOTg7ATjfFRaR0lO+eRRqPupam/EOUFzQcd/4hyk855ZSdynn66aeZNm0amzZtomnTpkyePDmvZzF+/HgGDx7Mpk2baNasGY899lja9StomPHq1atz6aWX5v0DpkTPY8CAAQwePJjq1aszffr0vHIaNmzI2LFj6dGjB7m5uRxwwAG88cYbBa437rHf6tWr8+CDD9K1a1caNGhAu3bt0t4mESkeDVEue6WNGzdSs2ZN3J2rr76a5s2bM2TIkF3yaZ9LWdEQ5SJ7oIcffpjs7GyysrJY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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "labels=df['GEONAME'].str.split(' ',expand=True)[0]\n", "ax=df.plot.bar(rot=0, title='Components of Population Change 2017-18')\n", "ax.set_xticklabels(labels)\n", "ax.set_xlabel('')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }