{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Margins of error in the ACS\n", "\n", "[![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/mmann1123/pytidycensus/blob/main/examples/03_margins_of_error.ipynb)\n", "\n", "Understanding and working with uncertainty in American Community Survey data." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pytidycensus as tc\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Census API Key\n", "\n", "To use pytidycensus, you need a free API key from the US Census Bureau. Get one at: https://api.census.gov/data/key_signup.html\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "\n", "# tc.set_census_api_key(\"Your API Key Here\") " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ignore this cell. I am just loading my credentials from a yaml file in the parent directory." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Census API key has been set for this session.\n", "Using Census API key from environment\n" ] } ], "source": [ "import os\n", "\n", "# Try to get API key from environment\n", "api_key = os.environ.get(\"CENSUS_API_KEY\")\n", "\n", "# For documentation builds without a key, we'll mock the responses\n", "try:\n", " tc.set_census_api_key(api_key)\n", " print(\"Using Census API key from environment\")\n", "except Exception:\n", " print(\"Using example API key for documentation\")\n", " # This won't make real API calls during documentation builds\n", " tc.set_census_api_key(\"EXAMPLE_API_KEY_FOR_DOCS\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Understanding ACS Uncertainty\n", "\n", "Unlike decennial Census counts, ACS data are estimates with margins of error." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Getting data from the 2018-2022 5-year ACS\n" ] }, { "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", " \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", " \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", "
GEOIDB01001_020EB01001_021EB01001_022EB01001_023EB01001_024EB01001_025EB01001_044EB01001_045EB01001_046E...B01001_022_moeB01001_023_moeB01001_024_moeB01001_025_moeB01001_044_moeB01001_045_moeB01001_046_moeB01001_047_moeB01001_048_moeB01001_049_moe
0271230301007057391112234598976...25.040.030.026.058.040.041.047.065.049.0
127123030201138672297119844411884...148.070.033.050.040.066.059.041.030.060.0
227123030202111538110121800...23.017.09.021.019.09.09.09.09.09.0
327123030300301061839419414739203...87.055.031.032.040.046.089.060.039.024.0
4271230304007711958701118086...44.012.013.013.023.013.062.013.010.031.0
\n", "

5 rows × 29 columns

\n", "
" ], "text/plain": [ " GEOID B01001_020E B01001_021E B01001_022E B01001_023E \\\n", "0 27123030100 70 57 39 111 \n", "1 27123030201 138 67 229 71 \n", "2 27123030202 11 15 38 11 \n", "3 27123030300 30 106 183 94 \n", "4 27123030400 77 119 58 7 \n", "\n", " B01001_024E B01001_025E B01001_044E B01001_045E B01001_046E ... \\\n", "0 22 34 59 89 76 ... \n", "1 19 84 44 118 84 ... \n", "2 0 12 18 0 0 ... \n", "3 19 41 47 39 203 ... \n", "4 0 11 18 0 86 ... \n", "\n", " B01001_022_moe B01001_023_moe B01001_024_moe B01001_025_moe \\\n", "0 25.0 40.0 30.0 26.0 \n", "1 148.0 70.0 33.0 50.0 \n", "2 23.0 17.0 9.0 21.0 \n", "3 87.0 55.0 31.0 32.0 \n", "4 44.0 12.0 13.0 13.0 \n", "\n", " B01001_044_moe B01001_045_moe B01001_046_moe B01001_047_moe \\\n", "0 58.0 40.0 41.0 47.0 \n", "1 40.0 66.0 59.0 41.0 \n", "2 19.0 9.0 9.0 9.0 \n", "3 40.0 46.0 89.0 60.0 \n", "4 23.0 13.0 62.0 13.0 \n", "\n", " B01001_048_moe B01001_049_moe \n", "0 65.0 49.0 \n", "1 30.0 60.0 \n", "2 9.0 9.0 \n", "3 39.0 24.0 \n", "4 10.0 31.0 \n", "\n", "[5 rows x 29 columns]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Example: Aging populations in Ramsey County, MN\n", "age_vars = [f\"B01001_0{i:02d}\" for i in range(20, 26)] + [f\"B01001_0{i:02d}\" for i in range(44, 50)]\n", "\n", "ramsey = tc.get_acs(\n", " geography=\"tract\",\n", " variables=age_vars,\n", " state=\"MN\", \n", " county=\"Ramsey\",\n", " year=2022,\n", " output=\"wide\",\n", ")\n", "ramsey.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cases where margin of error exceeds estimate: 'GEOID'\n", "2 27123030202\n", "3 27123030300\n", "4 27123030400\n", "6 27123030601\n", "8 27123030702\n", "Name: GEOID, dtype: object\n" ] } ], "source": [ "# Show cases where MOE exceeds estimate\n", "ramsey[\"moe_ratio\"] = (\n", " ramsey[\"B01001_020_moe\"] / ramsey[\"B01001_020E\"]\n", ") # Example MOE column\n", "print(\"Cases where margin of error exceeds estimate: 'GEOID'\")\n", "print(ramsey[ramsey['moe_ratio'] > 1]['GEOID'].head())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Aggregating Data and MOE Calculations\n", "\n", "When combining estimates, we need to properly calculate the margin of error." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Aggregated estimates with proper MOE calculation:\n", " B01001_020E moe_sum\n", "GEOID \n", "27123030100 70 57.0\n", "27123030201 138 83.0\n", "27123030202 11 17.0\n", "27123030300 30 35.0\n", "27123030400 77 84.0\n" ] } ], "source": [ "# Custom MOE calculation functions (simplified versions)\n", "def moe_sum(moes, estimates):\n", " \"\"\"Calculate MOE for sum of estimates\"\"\"\n", " return np.sqrt(sum(moe**2 for moe in moes))\n", "\n", "# Aggregate population over 65 by tract\n", "ramsey_65plus = (\n", " ramsey.groupby(\"GEOID\")\n", " .agg(\n", " {\n", " \"B01001_020E\": \"sum\",\n", " \"B01001_020_moe\": lambda x: moe_sum(\n", " x, ramsey.loc[x.index, \"B01001_020E\"]\n", " ),\n", " }\n", " )\n", " .rename(columns={\"B01001_020_moe\": \"moe_sum\"})\n", ")\n", "\n", "print(\"Aggregated estimates with proper MOE calculation:\")\n", "print(ramsey_65plus.head())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualization with Confidence Intervals" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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z6/2tqvzPnf77bfHn//853j55Zczh+Ttuuuuq73tlU1M37BhwygqKqoyduKJJ0br1q3j/PPPj6+//joz/uWXX8Z+++0Xhx9+eAwdOjTatm0b33zzTfTr1y8+/vjjOPnkk6O4uDjuueeeGD58eMyfP3+F1+vKXi8ArCMJAPxA48aNSyIieeqpp5K5c+cm06dPT+66666kZcuWyQYbbJB89tlnyRtvvJFERDJixIgq25555plJRCTPPPNMZqxTp05JRCT/+Mc/MmMlJSVJ+/btk+233z4zNmrUqGRlf8oq65k6dWpmbI899kj22GOPzPXy8vJk8eLFVbb76quvkrZt2ybHHHNMZmzu3LlJRCSjRo1a4X6+e/9r8hife+65zNicOXOSgoKC5Je//OUK97W8K664IomIpGXLlslOO+2U3HHHHcl1112XtG3bNtlwww2TGTNmZNa9++67k+HDhye33nprcu+99ybnnntu0qhRo6RVq1bJtGnTvvd+Kp/HNRERSUQkr776ambs008/TQoLC5ODDz44M3bWWWclBQUFyfz58zNjc+bMSerXr7/S53x5G264YbLddttVq54FCxYkzZs3T4477rgq47NmzUqaNWtWZXzYsGFJRCQXXnhhlXW33377pGfPnpnrp512WlJUVJSUl5ev8n6r+zt67733JhGRvPLKK9V6PKvSuHHjZNiwYZnrU6dOTSIiKSoqSubMmVNl3eq+Bp555pkkIpJTTz11hfurqKhY5X1/n8suuyypV69eUlpamiRJklxzzTVJp06dkp122in5zW9+kyRJkixbtixp3rx58otf/CKz3cqez1Xdb+W6yz+WJEmSgw8+OGnZsuVqaxw2bFjSuHHjJEmSZMiQIcnee++dqatdu3bJ6NGjM8/vZZddltmurKwsWbZsWZXbmjp1alJQUFDld2rChAlJRCSdO3dOFi1aVGX97t27JxtvvHGyYMGCzNizzz6bRETSqVOnKut+9/2puo/7yiuvTCIimTt37mqfi+XV5H1u+edwdSpfdyu7DBgwILNe5Wtnt912W+G1t8ceeyQRkVx//fVVxq+66qokIpLx48dnxpYsWZL07t07adKkSeb38PteLwCsGw7fA2Ct6d+/f7Ru3To6duwYhx9+eDRp0iTuvffe2GijjeKRRx6JiKhyyE5ExC9/+cuIiHj44YerjHfo0KHK3jNFRUVx1FFHxeuvv75WzhpXr169zBwhFRUVMW/evCgvL49evXrFlClT1ug2a/oYu3btGn379s1cb926dWy55ZbxySeffO/9VB7KlJeXF08//XT89Kc/jZEjR8Z9990XX331VVx77bWZdX/yk5/EuHHj4qijjoqDDjooLrroonj88cfjyy+/jN/97ndVbverr76KL774InOpvJ/lx7744otqH/rUu3fvzMTjERGbbLJJHHjggfH4449nDoM76qijYvHixfH3v/89s97dd98d5eXlq51bprS0NJo2bVqtWp588smYP39+HHHEEVUeS7169WLnnXde6SFrJ5xwQpXrffv2rdKb5s2bx9dffx1PPvlktWr4PpWTzj/00EOxdOnSH3x733XooYdmDkWtVN3XwD/+8Y/Iy8uLUaNGrXC7Kzs0sTr69u0by5YtixdeeCEivt0jqm/fvtG3b9+YNGlSRES8/fbbMX/+/CqvkTWxsj5++eWXmcPkquOnP/1pPPvsszFr1qx45plnYtasWSs9dC/i23moKueEWrZsWXz55ZeZQ+NW9t4ybNiw2GCDDTLXZ8yYEW+99VYcddRRVfYQ22OPPaJ79+7Vrnl1j7vyd+7++++PioqKat9uTd/naqKwsDCefPLJFS6XXHLJCused9xxK50AvaCgII4++ugVam7Xrl2VuQ0bNGgQp556aixcuDAmTpxYZf2VvV4AWDeEUgCsNddee208+eSTMWHChHj33Xfjk08+iQEDBkRExKeffhr5+fmx2WabVdmmXbt20bx58/j000+rjG+22WYrfOHdYostIiK+d66omrj11ltj2223jcLCwmjZsmW0bt06Hn744SgpKVmj26vpY9xkk01WuI0NN9wwvvrqq++9n8ovsIMHD67ypXWXXXaJ4uLizBf9Vdltt91i5513jqeeeqrK+Pbbbx+tW7fOXE455ZSIiCpjrVu3jksvvfR7b7/Syg4P3GKLLWLRokUxd+7ciIjYaqutYscdd4w77rgjs84dd9wRu+yyywrP43cVFRXFggULqlXLRx99FBHfznP23cfzxBNPxJw5c6qsXzlv0vK+25sTTzwxtthii9hvv/1i4403jmOOOSYee+yxatXzXXvssUcceuihMXr06GjVqlUceOCBMW7cuGrNFVYd3z3zYqXqvAb+85//RIcOHdbqIUw77LBDNGrUKBNAVYZSu+++e7z66qtRVlaWWbbbbrv9oPv67utsww03jIhY7etsefvvv380bdo07r777rjjjjtixx13XOXvZ0VFRVx55ZWx+eabR0FBQbRq1Spat26dOUTxu77bm8r3iZXd/upeE8tb3eM+7LDDok+fPjFixIho27ZtHH744fG3v/1ttQFVTd/naqJevXrRv3//FS4rOyR5Vb/TG2200QqTkn/66aex+eabrzCB/NZbb51ZXp3bBmDtM6cUAGvNTjvttNozvK3pnhU1ua3qTOY9fvz4GD58eBx00EHxq1/9Ktq0aRP16tWLMWPGZObCWtt1fdeqTnOerOZsd5Vz0rRt23aFZW3atKnWl+2OHTvGBx98UGXsjjvuiG+++SZz/YknnojLLrtshT2BvnvGtx/qqKOOitNOOy0+++yzWLx4cbz44ovxpz/9abXbbbXVVvHGG2/EkiVLVntmrMov2rfffnu0a9duheXfPaNbdU5B36ZNm3jjjTfi8ccfj0cffTQeffTRzF5plRMoV/d3NC8vL/7+97/Hiy++GA8++GA8/vjjccwxx8Qf/vCHePHFF1c5p1J1Lb8nTqV1+RpYnQYNGsTOO+8czz33XHz88ccxa9as6Nu3b7Rt2zaWLl0aL730UkyaNCm22mqrH7zHypq+zpZXUFAQhxxySNx6663xySefVJlY/LsuvvjiOO+88+KYY46Jiy66KFq0aBH5+flx+umnrzTwWVlv1obVPe4NNtggnnvuuZgwYUI8/PDD8dhjj8Xdd98de+21VzzxxBOrfQ2szffyNbGq521tPJ/rqicArEgoBUAqOnXqFBUVFfHRRx9l/jsdETF79uyYP39+dOrUqcr6H3/8cSRJUuWLz4cffhgRkZmQuvI///Pnz88cihKx4n+9V+bvf/97dO7cOf75z39WuY/vHqJUky9eNX2Ma6rykLjPP/98hWUzZsxY6ZnovuuTTz5Z4ct+nz59qlz/7LPPIuLbwzLXROXeScv78MMPo1GjRlXu+/DDD48zzjgj/vrXv8Y333wTDRo0iMMOO2y1tz948OCYPHly/OMf/6hyWM7KVE5+3aZNmzV+PCvTsGHDGDx4cAwePDgqKirixBNPjBtuuCHOO++82GyzzWr8O7rLLrvELrvsEr/73e/izjvvjJ/97Gdx1113xYgRI9ZazZWq+xro0qVLPP744zFv3rzv3VuqpiFF37594/e//3089dRT0apVq9hqq60iLy8vttlmm5g0aVJMmjQpDjjggNXeTlrhyE9/+tO4+eabIz8/Pw4//PBVrvf3v/899txzz/jLX/5SZXz+/PnRqlWr1d5P5fvExx9/vMKylY39EPn5+bH33nvH3nvvHVdccUVcfPHFcc4558SECRNW+TpJ631uberUqVO8+eabUVFRUWVvqffffz+zHIDscPgeAKnYf//9IyLiqquuqjJ+xRVXRERkzrZVacaMGVXOVldaWhq33XZb9OjRI7OnS2XQsPxZvCpPD786lXsBLL+3xEsvvRSTJ0+usl6jRo0iIqqcDn5VavoY19SWW24Z2223Xdx///1VzlT1xBNPxPTp06ucnbDyMLnlPfLII/Haa6/FwIED10o9qzJ58uQqc+hMnz497r///th3332r7IXRqlWr2G+//WL8+PFxxx13xMCBA6v15f2EE06I9u3bxy9/+ctMYLm8OXPmxG9/+9uIiBgwYEAUFRXFxRdfvNI5m1b2PK3Ol19+WeV6fn5+5syMlYfdVfd39Kuvvlphz53KQ5bW1iF831Xd18Chhx4aSZLE6NGjV7iN5bdt3LhxtV4nlfr27RuLFy+Oq666KnbbbbdMuNS3b9+4/fbbY8aMGdWaT6qm97um9txzz7joooviT3/600r3tqtUr169FXp5zz33rDREXpkOHTpEt27d4rbbbsvM6xbx7dks33rrrTUrfiXmzZu3wlh1fufSep9bm/bff/+YNWtW3H333Zmx8vLy+OMf/xhNmjSJPfbYI4vVAazf7CkFQCq22267GDZsWPz5z3+O+fPnxx577BEvv/xy3HrrrXHQQQfFnnvuWWX9LbbYIo499th45ZVXom3btnHzzTfH7NmzY9y4cZl19t1339hkk03i2GOPjV/96ldRr169uPnmm6N169Yxbdq0763ngAMOiH/+859x8MEHx6BBg2Lq1Klx/fXXR9euXat8Edxggw2ia9eucffdd8cWW2wRLVq0iG7dukW3bt1+8GP8Ia688srYZ599Yrfddouf//znUVJSEldccUVsscUWMXLkyMx6u+66a2y//fbRq1evaNasWUyZMiVuvvnm6NixY5x99tlrrZ6V6datWwwYMCBOPfXUKCgoiOuuuy4iYqXhxlFHHRVDhgyJiIiLLrqoWre/4YYbxr333hv7779/9OjRI4YOHZrZi2zKlCnx17/+NXr37h0R384/NXbs2DjyyCNjhx12iMMPPzzze/Lwww9Hnz59qnXI4PJGjBgR8+bNi7322is23njj+PTTT+OPf/xj9OjRI7MHSXV/R2+99da47rrr4uCDD44uXbrEggUL4sYbb4yioqJMCLC2Vfc1sOeee8aRRx4Z11xzTXz00UcxcODAqKioiEmTJsWee+4ZJ598ckR8uwffU089FVdccUV06NAhiouLY+edd17l/ffu3Tvq168fH3zwQRx//PGZ8d133z3Gjh0bEVGtUKqm97um8vPz49xzz13tegcccEBceOGFcfTRR8euu+4ab731Vtxxxx01Ouz14osvjgMPPDD69OkTRx99dHz11Vfxpz/9Kbp161alNz/EhRdeGM8991wMGjQoOnXqFHPmzInrrrsuNt544++dx2tdvs+Vl5fH+PHjV7rs4IMPjsaNG6/R7R5//PFxww03xPDhw+O1116LTTfdNP7+97/H888/H1dddVW1T5gAwDqQrdP+AVB3VJ6ie3Wns1+6dGkyevTopLi4OGnQoEHSsWPH5KyzzkrKysqqrNepU6dk0KBByeOPP55su+22SUFBQbLVVlsl99xzzwq3+dprryU777xz0rBhw2STTTZJrrjiikw9U6dOzay3xx57JHvssUfmekVFRXLxxRcnnTp1SgoKCpLtt98+eeihh5Jhw4atcMr1F154IenZs2fSsGHDKqdfX9np6Wv6GL/ru3V+nyeffDLZZZddksLCwqRFixbJkUcemcycObPKOuecc07So0ePpFmzZkmDBg2STTbZJBk5cmQya9as1d5+5fO4JiIiOemkk5Lx48cnm2++eeY5njBhwkrXX7x4cbLhhhsmzZo1S7755psa3deMGTOSX/ziF8kWW2yRFBYWJo0aNUp69uyZ/O53v0tKSkqqrDthwoRkwIABSbNmzZLCwsKkS5cuyfDhw5NXX301s86qTmP/3X7//e9/T/bdd9+kTZs2md+/n//85yv0oDq/o1OmTEmOOOKIZJNNNkkKCgqSNm3aJAcccECVuqqjcePGybBhwzLXK09xf9lll62wbk1eA+Xl5clll12WbLXVVknDhg2T1q1bJ/vtt1/y2muvZdZ5//33k9133z3ZYIMNkoioUseq7LjjjklEJC+99FJm7LPPPksiIunYseMK66/sNbeq+61cd+7cuVXWX9n7w8qs6vdgeSt7fsvKypJf/vKXSfv27ZMNNtgg6dOnTzJ58uQVXtsTJkxIImKl72tJkiR33XVXstVWWyUFBQVJt27dkgceeCA59NBDk6222qrKesu/J9XkcT/99NPJgQcemHTo0CFp2LBh0qFDh+SII45IPvzww+99zElS/fe56jyHy68bEau8VNb9fX9v9thjj2SbbbZZ6e3Pnj07Ofroo5NWrVolDRs2TLp3756MGzeuyjrf93oBYN3IS5IazPIIACnYdNNNo1u3bvHQQw9luxRSUl5eHh06dIjBgwevMBcP8K0ePXpE69atVzj5AADkKnNKAQBZd99998XcuXPjqKOOynYpkHVLly6N8vLyKmPPPvts/Pvf/45+/fplpygAWAfMKQUAZM1LL70Ub775Zlx00UWx/fbbm3AY4tsza/bv3z+GDh0aHTp0iPfffz+uv/76aNeuXZxwwgnZLg8A1hqhFACQNWPHjo3x48dHjx494pZbbsl2OVArbLjhhtGzZ8+46aabYu7cudG4ceMYNGhQXHLJJdGyZctslwcAa405pQAAAABInTmlAAAAAEidUAoAAACA1JlTKiIqKipixowZ0bRp08jLy8t2OQAAAAA5K0mSWLBgQXTo0CHy81e9P5RQKiJmzJgRHTt2zHYZAAAAAHXG9OnTY+ONN17lcqFURDRt2jQivn2yioqKslwNAAAAQO4qLS2Njh07ZvKWVRFKRWQO2SsqKhJKAQAAAKwFq5siyUTnAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKROKAUAAABA6oRSAAAAAKSufrYLAAAAAKrvpkmfxE2TptZ4uxF9i2NE387roCJYM0IpAAAAyCELyspjVmnZGm0HtYlQCgAAAHJI08L60a6osMpYEknMLl0cERFtiwoiL/JWuh3UJnlJkiTZLiLbSktLo1mzZlFSUhJFRUXZLgcAAABqZNGS8uh6/uMREfHuhQOiUUMBFNlT3Zyl1kx0fskll0ReXl6cfvrpmbGysrI46aSTomXLltGkSZM49NBDY/bs2VW2mzZtWgwaNCgaNWoUbdq0iV/96ldRXm6XRAAAAIDarFaEUq+88krccMMNse2221YZ/8UvfhEPPvhg3HPPPTFx4sSYMWNGHHLIIZnly5Yti0GDBsWSJUvihRdeiFtvvTVuueWWOP/889N+CAAAAADUQNZDqYULF8bPfvazuPHGG2PDDTfMjJeUlMRf/vKXuOKKK2KvvfaKnj17xrhx4+KFF16IF198MSIinnjiiXj33Xdj/Pjx0aNHj9hvv/3ioosuimuvvTaWLFmSrYcEAAAAwGpkPZQ66aSTYtCgQdG/f/8q46+99losXbq0yvhWW20Vm2yySUyePDkiIiZPnhzdu3ePtm3bZtYZMGBAlJaWxjvvvLPK+1y8eHGUlpZWuQAAAACQnqzOfHbXXXfFlClT4pVXXllh2axZs6Jhw4bRvHnzKuNt27aNWbNmZdZZPpCqXF65bFXGjBkTo0eP/oHVAwAAALCmsran1PTp0+O0006LO+64IwoLC1e/wVp01llnRUlJSeYyffr0VO8fAAAAYH2XtVDqtddeizlz5sQOO+wQ9evXj/r168fEiRPjmmuuifr160fbtm1jyZIlMX/+/CrbzZ49O9q1axcREe3atVvhbHyV1yvXWZmCgoIoKiqqcgEAAAAgPVkLpfbee+9466234o033shcevXqFT/72c8yPzdo0CCefvrpzDYffPBBTJs2LXr37h0REb1794633nor5syZk1nnySefjKKioujatWvqjwkAAACA6snanFJNmzaNbt26VRlr3LhxtGzZMjN+7LHHxhlnnBEtWrSIoqKiOOWUU6J3796xyy67RETEvvvuG127do0jjzwyLr300pg1a1ace+65cdJJJ0VBQUHqjwkAAACA6snqROerc+WVV0Z+fn4ceuihsXjx4hgwYEBcd911meX16tWLhx56KEaOHBm9e/eOxo0bx7Bhw+LCCy/MYtUAAAAArE5ekiRJtovIttLS0mjWrFmUlJSYXwoAAICcs2hJeXQ9//GIiHj3wgHRqGGt3geFOq66OUvW5pQCAAAAYP0llAIAAAAgdUIpAAAAAFInlAIAAAAgdUIp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SgEAAACQOqEUAAAAAKn7QaHU888/H4sXL15btQAAAACwnvhBodR+++0Xn3/++dqqBQAAAID1xA8KpZIkWVt1AAAAALAeMacUAAAAAKmrX5OVL7zwwirXlyxZEtdcc020aNEiM3b++eevncoAAAAAqLNqFEpNnTq1yvUkSeKzzz6LkpKSiIjIy8tbe5UBAAAAUGfVKJQaN25clet///vf49JLL43OnTuv1aIAAAAAqNvMKQUAAABA6rIaSo0ZMyZ23HHHaNq0abRp0yYOOuig+OCDD6qsU1ZWFieddFK0bNkymjRpEoceemjMnj27yjrTpk2LQYMGRaNGjaJNmzbxq1/9KsrLy9N8KAAAAADUwA8KpW644YZo27btGm8/ceLEOOmkk+LFF1+MJ598MpYuXRr77rtvfP3115l1fvGLX8SDDz4Y99xzT0ycODFmzJgRhxxySGb5smXLYtCgQbFkyZJ44YUX4tZbb41bbrnFhOsAAAAAtVhekiRJtouoNHfu3GjTpk1MnDgxdt999ygpKYnWrVvHnXfeGUOGDImIiPfffz+23nrrmDx5cuyyyy7x6KOPxgEHHBAzZszIBGTXX399/OY3v4m5c+dGw4YNV3u/paWl0axZsygpKYmioqJ1+hhhVRYtKY+u5z8eERHvXjggGjWs0ZRvAADAesz3CWqT6uYstWpOqcqz+LVo0SIiIl577bVYunRp9O/fP7POVlttFZtssklMnjw5IiImT54c3bt3r7LH1oABA6K0tDTeeeedld7P4sWLo7S0tMoFAAAAgPRUO5R6+eWXY9myZZnrDz30UOyxxx6x0UYbRa9eveK22277QYVUVFTE6aefHn369Ilu3bpFRMSsWbOiYcOG0bx58yrrtm3bNmbNmpVZ57uHEFZer1znu8aMGRPNmjXLXDp27PiDagcAAACgZqodSvXu3Tu+/PLLiIh48MEH48ADD4xNN900zjnnnNh+++3j2GOPjXvvvXeNCznppJPi7bffjrvuumuNb6O6zjrrrCgpKclcpk+fvs7vEwAAAID/qfZBpstPPXXppZfGr3/96xgzZkxmrLi4OC699NI4+OCDa1zEySefHA899FA899xzsfHGG2fG27VrF0uWLIn58+dX2Vtq9uzZ0a5du8w6L7/8cpXbqzw7X+U631VQUBAFBQU1rhMAAACAtWON5pT68MMPMxOPVzr00EPj/fffr9HtJEkSJ598ctx7773xzDPPRHFxcZXlPXv2jAYNGsTTTz+dGfvggw9i2rRp0bt374j4dg+ut956K+bMmZNZ58knn4yioqLo2rVrTR8aAAAAACmo0XT87777bsyaNSs22GCDqKioWGF5eXl5je78pJNOijvvvDPuv//+aNq0aWYOqGbNmsUGG2wQzZo1i2OPPTbOOOOMaNGiRRQVFcUpp5wSvXv3jl122SUiIvbdd9/o2rVrHHnkkXHppZfGrFmz4txzz42TTjrJ3lAAAAAAtVSNQqm99947cxjf888/HzvuuGNm2euvvx6bbLJJje587NixERHRr1+/KuPjxo2L4cOHR0TElVdeGfn5+XHooYfG4sWLY8CAAXHddddl1q1Xr1489NBDMXLkyOjdu3c0btw4hg0bFhdeeGGNagEAAAAgPdUOpaZOnVrlepMmTapcX7JkSfzmN7+p0Z0vP0/VqhQWFsa1114b11577SrX6dSpUzzyyCM1um8AAAAAsqfaoVSnTp2+d/lRRx31g4sBAAAAYP1Qo8P3lldeXh4TJkyIadOmRadOnWLPPfeMevXqrc3aAAAAAKijqh1KnXLKKTFgwIA44IAD4rPPPot99tknPvroo2jVqlV88cUX0bVr13j00Udjo402Wpf1AgAAAFAH5Fd3xXvuuSc23XTTiIj45S9/GRtvvHHMmjUrZs2aFXPmzIlOnTrF6aefvo7KBAAAAKAuqfaeUiUlJdG4ceOIiHjhhRfiH//4R7Rq1SoiIlq0aBFjxoyJPffcc91UCQAAAECdUu09pbbYYot4+eWXIyKiadOmUVpaWmX5ggULoqKiYu1WBwAAAECdVO09pX7xi1/EmWeeGW3bto2zzjorTj311PjjH/8YW2+9dXzwwQdx2mmnxSGHHLIuawUAAACgjqh2KDV8+PCYN29eDBo0KJIkiWXLlsW+++6bWf6jH/0orrzyynVSJAAAAAB1S7VDqYiIM844I4455ph48skn45NPPomKiopo37599OnTJzbffPN1VSMAAAAAdUyNQqmIiObNm8ePf/zjdVELAAAAAOuJak90DgAAAABri1AKAAAAgNQJpQAAAABInVAKAAAAgNQJpQAAAABIXY1DqdmzZ8eRRx4ZHTp0iPr160e9evWqXAAAAABgderXdIPhw4fHtGnT4rzzzov27dtHXl7euqgLAAAAgDqsxqHUv/71r5g0aVL06NFjHZQDAAAAwPqgxofvdezYMZIkWRe1AAAAALCeqHEoddVVV8X//d//xX//+991UA4AAAAA64MaH7532GGHxaJFi6JLly7RqFGjaNCgQZXl8+bNW2vFAQAAAFA31TiUuuqqq9ZBGQAAAACsT2ocSg0bNmxd1AEAAADAeqTGoVRExLJly+K+++6L9957LyIittlmm/jRj34U9erVW6vFAQAAAFA31TiU+vjjj2P//fePzz//PLbccsuIiBgzZkx07NgxHn744ejSpctaLxIAAACAuqXGZ9879dRTo0uXLjF9+vSYMmVKTJkyJaZNmxbFxcVx6qmnrosaAQAAAKhjaryn1MSJE+PFF1+MFi1aZMZatmwZl1xySfTp02etFgcAAABA3VTjPaUKCgpiwYIFK4wvXLgwGjZsuFaKAgAAAKBuq3EodcABB8Txxx8fL730UiRJEkmSxIsvvhgnnHBC/OhHP1oXNQIAAADfY1lFkvn55anzqlyH2qrGodQ111wTXbp0id69e0dhYWEUFhZGnz59YrPNNourr756XdQIAAAArMJjb8+M/ldMzFwfPu6V2O33z8Rjb8/MYlWwejWeU6p58+Zx//33x0cffRTvv/9+RERsvfXWsdlmm6314gAAAIBVe+ztmTFy/JT47n5Rs0rKYuT4KTF26A4xsFv7rNQGq1PjUKrS5ptvHptvvvnarAUAAACopmUVSYx+8N0VAqmIiCQi8iJi9IPvxj5d20W9/LyUq4PVq1YodcYZZ8RFF10UjRs3jjPOOON7173iiivWSmEAAADAqr08dV7MLClb5fIkImaWlMXLU+dF7y4t0ysMqqlaodTrr78eS5cuzfwMAAAAZNecBasOpNZkPUhbtUKpCRMmrPRnAAAAIDvaNC1cq+tB2mp89r1jjjkmFixYsML4119/Hcccc8xaKQoAAAD4fjsVt4j2zQpjVbNF5UVE+2aFsVNxizTLgmqrcSh16623xjfffLPC+DfffBO33XbbWikKAAAA+H718vNi1OCuERErBFOV10cN7mqSc2qtaodSpaWlUVJSEkmSxIIFC6K0tDRz+eqrr+KRRx6JNm3arMtaAQAAgOUM7NY+xg7dIdoUFVQZb9esMMYO3SEGdmufpcpg9ao1p1RERPPmzSMvLy/y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xIkTI+LbYNHn0tyyaNGiWLRoUSxcuDDbpfADffHFFzFlypT44IMP4osvvsh2OTUmlFrPfPLJJ3HjjTdGRPgylaPee++9OOGEE6Jv375xwgknxP3335/tkqihd955J4YMGRK77bZbHHrooXHttddmuyRqYNasWbH55ptHjx494pVXXvFemoP+/e9/R48ePWLq1KlRv379bJdDDb311luxyy67RH5+fhQVFUXE//bS8KU4N7zxxhuxyy67RL169eL111/3j7Yc89Zbb8Xee+8dRxxxROy7775x3HHHRYQ93nLJ22+/HUOGDIm+ffvGkCFD4pxzzsl2SayhN998M3beeef42c9+Fr17944f//jHOff9UCi1Hvnoo49i5513jgsuuCD+8Ic/RIRgKte888470bdv38jPz4/dd989Pv300xg7dmx88skn2S6NanrnnXdit912i27dusWvf/3r2GGHHeKuu+6KefPm+VKVIxo1ahQ9evSIAQMGxP777x8vvfRS5Of7c5or3nzzzejdu3f85je/iYsuuijb5VBD8+bNixEjRsSxxx4bV111VWy55ZaxcOHC+PTTTyPCl+Jc8O9//zt23XXXOPvss+P++++PO++8M1566SW9yxEff/xx9O/fP4YMGRK333573H777fHAAw/ERx99lO3SqKYPPvgg+vXrF9tss02ceuqpsc8++8Qf//jHOOyww2Lq1KnZLo8amD17dgwePDgOOuigeOSRR+Kmm26KLl26xJAhQ+Kmm27KdnnV5t+D64l58+bF6aefHrvuumu0bt067rnnnqioqIhf/epXmWDKl6rabfbs2XHsscfG8OHD4/LLL4+Ib79c9e/fP954443o3LlzlitkdT7//PP4yU9+EieccEKMGTMmIiI6deoUH3/8cSxcuDBKS0tj0003zewC7wN67VPZl6VLl8aQIUOiefPmMXjw4HjiiSeiR48e8e9//zu22WYbe9/UUlOnTo0ePXrEqaeeGmPGjIkkSeKKK66IN998M1q2bBnbb799HHnkkdkuk+/x5ZdfRllZWZxxxhmxbNmyOPLII+PDDz+MGTNmxG677Ra///3vo7i4ONtlsgpvvfVWbL/99nHWWWfFb37zm1i6dGnsu+++8ac//Sl22GGHaNy4cbZLZDXuvvvu2GWXXeK8886L/Pz86NChQ3Tr1i3mzp0bH374Yeyzzz7RsGHDbJfJKiRJEjfffHMceOCBcdlll0XEt9OCTJkyJf7617/GwoUL429/+1s0btzYZ9EcMHPmzGjevHmcdtppsckmm0RxcXHstttusdFGG8Xxxx8fhYWFMXTo0GyXuVo+Na8n8vPzo23btnHIIYdEz54943e/+1384x//iIgQTOWI999/PzbaaKM44ogjIuLbOcG23Xbb6N27d0yfPj0zpoe115dffhkDBgyIY445JjP29NNPx5QpU2L33XePgoKC6N27d9xyyy0+BNRSFRUV0bRp0+jVq1dsueWW0a9fv1i2bFkMHDgwunbtGi1btowbb7wxmjdvnu1SWYmFCxdGQUFBfP311zFv3rw46KCDYunSpdGmTZuYMWNG/O1vf4v33nsvLr744myXyip89dVXsWzZsmjdunUcfvjhsWjRojjzzDOjYcOGceaZZ8ZPf/rTeOKJJ6Jp06bZLpXvWLJkSdx2220xevToOO+88yIiokGDBrHbbrvFtddeGwsXLozGjRv7LFPL/ec//4l58+ZlenTrrbfGCy+8ECeffHJ8+umnsfnmm8fdd98dnTp1ynKlrExeXl688847mUOfKyoqokGDBtGrV6/YcMMN469//WucfvrpceONN/osmgOWLFkSb731VsycOTM22WSTiIho06ZN/PKXv4zFixfHGWecEV26dInevXtnudLVSKjzKioqkiRJkvnz52fGpk+fnpx44onJzjvvnFx66aWZ8cWLF6deH9XzwQcfJOPGjctcr+zrwIEDk7POOitLVVETS5YsST7//PPM9auvvjopKipKbr/99uS5555L7rvvvqRRo0bJn/70pyxWSXX8/Oc/T84555wkSZLks88+Szp37pzk5+cnN998c5IkSbJs2bJslsf3eOWVV5KWLVsm9erVS4YMGZJMnz49SZIkmTdvXnL55ZcnxcXFyfPPP5/lKlmVuXPnJi1btkxOOeWUZMiQIcm///3vzLJ58+Ylbdu2TUaNGpW9AvleX375ZebnyvfJ8vLypHPnzsnPf/7zbJVFDTz88MNJQUFBMmDAgGTo0KFJYWFh8sgjjySzZs1KFixYkGy66abJsccem+0y+R6//e1vk7333jvzt+7jjz9OmjZtmtx+++3Jbbfdlmy++ebJJ598kuUqqY4FCxYkAwcOTI455pjks88+q7Lsww8/TPr165dcdtllSZL877tjbeTfEOuBypS7WbNmERFRXl4eG2+8cZxzzjnRs2fP+Mc//hGXXXZZJEkSI0eOjHPPPTeb5bIKW2yxRQwfPjwiosrutI0aNaoyB9GVV14Zt912WzZKZDUaNGgQHTp0yFxv3rx53H///TF06NDo27dv9O/fP7beeuuYMWNGFqvk+1S+1jbddNMoKSmJiIhzzjknFi5cGPvss0+cd9558fzzz/svfy3Wq1eveOyxx2LgwIFx3HHHxcYbbxwRERtuuGEMHjw45syZE9OmTctylaxMRUVFtGrVKs4666x47LHH4qmnnsp8tikrK4sNN9ww9tprL2c1rcVatGiR+blyL/28vLw44ogj4vXXX8/s+Z2YW7HW2n333ePee++NnXbaKRo0aBAnnnhi7LfffrHhhhtGkyZN4sADD4xp06aZs7YW23PPPaOioiKOPvro2GeffaJ79+4xdOjQGDp0aOy4447x2WefxZw5c7JdJt9j2bJlERHRpEmTGDRoUEyePDnGjx8fc+fOzayz+eabR1FRUUyaNCkiaveciz41r4fq168fSZJEhw4d4pxzzolevXrFfffdFzvuuGOMHz8+Bg8enO0SWY3l31Q23HDDaNSoUUREnH322XH22WfHDjvskK3SqIGjjjoq+vXrV2WsVatWmfnBfCivfSpfe/3794+FCxfGQQcdFI8//ng88cQT8cc//jG23XbbOProo6OsrEz/arFevXrFX/7yl9h9990j4n+vtUaNGsXWW29dJTym9qgMewcOHBg77LBDlJSUxC233BIREYWFhRHx7Qf1ysNnvQZrv/z8/MjPz48jjjgi3nzzzcwZo2rzl6f1XZMmTWK//faLCy+8ML755ptYuHBhRERmHqk5c+bEJpts4vVXi+26665x5ZVXxhlnnBG77LJL3HjjjXHddddFRMTixYtjq622ilatWmW5Sr7rk08+iRtvvDEiIurVqxdLly6NiIiTTz45DjjggPjzn/8c1113XZV/rBUVFUVxcXGtD4nNKbUeSFYySV3lRModOnSIM888M/baa6+YP39+vPrqq9G9e/csVcqqrKyHlUpLSyNJkrj44ovjyiuvjH/961/RrVu3lCtkdVbWw++OXXLJJfHhhx9G//79I8KH8tpkZf279dZbY9NNN42HH344tttuu4j4dk/FJk2aZL4gU3t8t4dt27bN/Fw5Pnbs2Pj6669j8803T70+vt/y/dtmm23inHPOiQYNGsTo0aNj2rRp0aNHj/jggw/i6aefjueffz4ivIfWNqv6LFNRURHbbLNNnHbaaXHjjTfGgQceGB07dsxChXyflfVvzz33jOuuuy5uvfXW6NmzZ4wfPz6eeuqpmDhxYtSrVy9LlbIqlUFhXl5ebLfddpnPLsu77bbboqKiwtyYtcxHH30Uu+66azRs2DBKS0vjl7/8ZTRo0CCWLFkSDRs2jEsvvTQ22GCDeOCBB+K+++6L3r17x/z58+Ohhx6KyZMn1/o9+IVSdVDlBJEzZsyIDh06rPJDWV5eXixZsiSuvvrqmDNnTkyePFkgVUtUt4cR3x4SduGFF0ZhYWFMmjQpevbsmWKlrEp1elg59tprr8W4cePir3/9azz99NMmB60FVte/Xr16xSOPPBLt27ev8qFuyy23TLtUVqEm76OvvPJK3HzzzXH33XfHhAkTon379ilWysqsrn/du3ePSy65JPbdd9/4wx/+EO+//340bdo0nnnmGa/DWqK6r8HKL0tbb7113HPPPZm9v8mu6vRvl112iZdeeilOOumk6NixY9SvXz+eeOKJ2HrrrbNQMd9Vk7+DkydPjuuuuy4eeuihmDBhQrRs2TLFSvk+8+bNi9NPPz123XXXaN26ddxzzz1RUVERv/rVr6Jhw4aZYGr06NGx6667xgsvvBAvvvhidOrUKV544YXYZpttsv0QVqt2R2bUyIcffhjXXHNN5Ofnx9/+9rf4yU9+kjk2f1UqKiri448/jmeffVYgVQusSQ832mijaNeuXbz44ovRq1evlCplVWraw9mzZ8fEiRNj+vTpMXHixOjRo0d6xbKC6vSv8j+NAwcOXOl/Gcmumr4GZ82aFU899VT85z//iWeffVZPs6wm/dtoo43iyCOPjClTpsSkSZPi3nvvjW233TblivmuNfksExExbNiwmDx5si/DWVaT/m277bZx2WWXxfPPPx/jx4+PZ555xueYWmBNXoNt2rSJBg0axHPPPaeHtUx+fn60bds2jjvuuLjooouiV69emTmhI749dLbyUL4BAwbE6NGj45FHHokbbrghd46eSW9OddalioqK5Prrr0/y8vKSYcOGJXl5ecktt9yy2m2SxFmiaos16WGSJMmUKVOS//73vylUyOqsaQ/n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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create error bar plot showing uncertainty\n", "fig, ax = plt.subplots(figsize=(12, 8))\n", "\n", "sample_data = ramsey_65plus.head(10)\n", "x = range(len(sample_data))\n", "\n", "ax.errorbar(\n", " x,\n", " sample_data[\"B01001_020E\"],\n", " yerr=sample_data[\"moe_sum\"],\n", " fmt=\"o\",\n", " capsize=5,\n", " capthick=2,\n", ")\n", "ax.set_xlabel('Census Tract')\n", "ax.set_ylabel('Population 65+')\n", "ax.set_title('Population 65+ by Census Tract with Margins of Error')\n", "plt.xticks(x, [f'Tract {i+1}' for i in x], rotation=45)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "test2", "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.11.13" } }, "nbformat": 4, "nbformat_minor": 4 }