{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Pew Research data on religious affiliation\n", "\n", "Elements of Data Science\n", "\n", "by [Allen Downey](https://allendowney.com)\n", "\n", "[MIT License](https://opensource.org/licenses/MIT)\n", "\n", "Loading and cleaning data from Pew Research Center, Religion and Public Life.\n", "\n", "\"[In U.S., Decline of Christianity Continues at Rapid Pace](https://www.pewforum.org/2019/10/17/in-u-s-decline-of-christianity-continues-at-rapid-pace/): An update on America's changing religious landscape\", October 17, 2019.\n", "\n", "We can download the tables directly from Pew Research:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--2019-10-24 15:21:35-- https://www.pewforum.org/wp-content/uploads/sites/7/2019/10/Detailed-Tables-v1-FOR-WEB.pdf\n", "Resolving www.pewforum.org (www.pewforum.org)... 192.0.66.2\n", "Connecting to www.pewforum.org (www.pewforum.org)|192.0.66.2|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 1069037 (1.0M) [application/pdf]\n", "Saving to: ‘Detailed-Tables-v1-FOR-WEB.pdf’\n", "\n", "Detailed-Tables-v1- 100%[===================>] 1.02M --.-KB/s in 0.07s \n", "\n", "2019-10-24 15:21:36 (13.9 MB/s) - ‘Detailed-Tables-v1-FOR-WEB.pdf’ saved [1069037/1069037]\n", "\n" ] } ], "source": [ "import os\n", "\n", "if not os.path.exists('Detailed-Tables-v1-FOR-WEB.pdf'):\n", " !wget https://www.pewforum.org/wp-content/uploads/sites/7/2019/10/Detailed-Tables-v1-FOR-WEB.pdf" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The data are in a table in a PDF document, so I'll use [tabula-py](https://tabula-py.readthedocs.io/en/latest/) to read them." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "import sys\n", "IN_COLAB = 'google.colab' in sys.modules\n", "\n", "if IN_COLAB:\n", " !pip install tabula-py" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from tabula import read_pdf\n", "import pandas as pd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I'll read the table from page 1, specifying which column to use as the index and which columns to read. I'm using data from the Aggregated Political Surveys (columns 3-12) and skipping the Religious Landscape Studies (columns 1-2)." ] }, { "cell_type": "code", "execution_count": 3, "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", " \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", " \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", "
200920102011201220132014.12015201620172019
Christian777675737371.069.068.067.065
Protestant515150494948.046.044.045.043
Catholic232323222221.021.021.020.020
Mormon222222.02.02.02.02
Orthodox Christian111111.01.01.01.0<1
Other ChristianNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
Non-Christian faiths555656.06.07.06.07
Jewish222222.01.02.02.02
Muslim111111.01.01.01.01
Buddhist1<11111.01.01.01.01
Hindu<1<1<1<1<11.01.01.01.01
Other222222.02.03.02.03
Unaffiliated171719192021.024.023.025.026
Atheist222233.04.04.04.04
Agnostic323333.04.04.05.05
Nothing in particular121214141414.016.016.016.017
Don’t know/refused221221.01.02.02.02
NaN100100100100100100.0100.0100.0100.0100
\n", "
" ], "text/plain": [ " 2009 2010 2011 2012 2013 2014.1 2015 2016 2017 \\\n", "Christian 77 76 75 73 73 71.0 69.0 68.0 67.0 \n", "Protestant 51 51 50 49 49 48.0 46.0 44.0 45.0 \n", "Catholic 23 23 23 22 22 21.0 21.0 21.0 20.0 \n", "Mormon 2 2 2 2 2 2.0 2.0 2.0 2.0 \n", "Orthodox Christian 1 1 1 1 1 1.0 1.0 1.0 1.0 \n", "Other Christian NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "Non-Christian faiths 5 5 5 6 5 6.0 6.0 7.0 6.0 \n", "Jewish 2 2 2 2 2 2.0 1.0 2.0 2.0 \n", "Muslim 1 1 1 1 1 1.0 1.0 1.0 1.0 \n", "Buddhist 1 <1 1 1 1 1.0 1.0 1.0 1.0 \n", "Hindu <1 <1 <1 <1 <1 1.0 1.0 1.0 1.0 \n", "Other 2 2 2 2 2 2.0 2.0 3.0 2.0 \n", "Unaffiliated 17 17 19 19 20 21.0 24.0 23.0 25.0 \n", "Atheist 2 2 2 2 3 3.0 4.0 4.0 4.0 \n", "Agnostic 3 2 3 3 3 3.0 4.0 4.0 5.0 \n", "Nothing in particular 12 12 14 14 14 14.0 16.0 16.0 16.0 \n", "Don’t know/refused 2 2 1 2 2 1.0 1.0 2.0 2.0 \n", "NaN 100 100 100 100 100 100.0 100.0 100.0 100.0 \n", "\n", " 2019 \n", "Christian 65 \n", "Protestant 43 \n", "Catholic 20 \n", "Mormon 2 \n", "Orthodox Christian <1 \n", "Other Christian NaN \n", "Non-Christian faiths 7 \n", "Jewish 2 \n", "Muslim 1 \n", "Buddhist 1 \n", "Hindu 1 \n", "Other 3 \n", "Unaffiliated 26 \n", "Atheist 4 \n", "Agnostic 5 \n", "Nothing in particular 17 \n", "Don’t know/refused 2 \n", "NaN 100 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pages = 1\n", "pandas_options = dict(index_col=0, usecols=[0,3,4,5,6,7,8,9,10,11,12])\n", "df = read_pdf('Detailed-Tables-v1-FOR-WEB.pdf', pages=pages, pandas_options=pandas_options)\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because there are two columns with the heading `2014`, `tabula-py` makes one of them `2014.1`. So I'll rename it." ] }, { "cell_type": "code", "execution_count": 4, "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", " \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", " \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", "
2009201020112012201320142015201620172019
Christian777675737371.069.068.067.065
Protestant515150494948.046.044.045.043
Catholic232323222221.021.021.020.020
Mormon222222.02.02.02.02
Orthodox Christian111111.01.01.01.0<1
Other ChristianNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
Non-Christian faiths555656.06.07.06.07
Jewish222222.01.02.02.02
Muslim111111.01.01.01.01
Buddhist1<11111.01.01.01.01
Hindu<1<1<1<1<11.01.01.01.01
Other222222.02.03.02.03
Unaffiliated171719192021.024.023.025.026
Atheist222233.04.04.04.04
Agnostic323333.04.04.05.05
Nothing in particular121214141414.016.016.016.017
Don’t know/refused221221.01.02.02.02
NaN100100100100100100.0100.0100.0100.0100
\n", "
" ], "text/plain": [ " 2009 2010 2011 2012 2013 2014 2015 2016 2017 \\\n", "Christian 77 76 75 73 73 71.0 69.0 68.0 67.0 \n", "Protestant 51 51 50 49 49 48.0 46.0 44.0 45.0 \n", "Catholic 23 23 23 22 22 21.0 21.0 21.0 20.0 \n", "Mormon 2 2 2 2 2 2.0 2.0 2.0 2.0 \n", "Orthodox Christian 1 1 1 1 1 1.0 1.0 1.0 1.0 \n", "Other Christian NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "Non-Christian faiths 5 5 5 6 5 6.0 6.0 7.0 6.0 \n", "Jewish 2 2 2 2 2 2.0 1.0 2.0 2.0 \n", "Muslim 1 1 1 1 1 1.0 1.0 1.0 1.0 \n", "Buddhist 1 <1 1 1 1 1.0 1.0 1.0 1.0 \n", "Hindu <1 <1 <1 <1 <1 1.0 1.0 1.0 1.0 \n", "Other 2 2 2 2 2 2.0 2.0 3.0 2.0 \n", "Unaffiliated 17 17 19 19 20 21.0 24.0 23.0 25.0 \n", "Atheist 2 2 2 2 3 3.0 4.0 4.0 4.0 \n", "Agnostic 3 2 3 3 3 3.0 4.0 4.0 5.0 \n", "Nothing in particular 12 12 14 14 14 14.0 16.0 16.0 16.0 \n", "Don’t know/refused 2 2 1 2 2 1.0 1.0 2.0 2.0 \n", "NaN 100 100 100 100 100 100.0 100.0 100.0 100.0 \n", "\n", " 2019 \n", "Christian 65 \n", "Protestant 43 \n", "Catholic 20 \n", "Mormon 2 \n", "Orthodox Christian <1 \n", "Other Christian NaN \n", "Non-Christian faiths 7 \n", "Jewish 2 \n", "Muslim 1 \n", "Buddhist 1 \n", "Hindu 1 \n", "Other 3 \n", "Unaffiliated 26 \n", "Atheist 4 \n", "Agnostic 5 \n", "Nothing in particular 17 \n", "Don’t know/refused 2 \n", "NaN 100 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = df.rename(columns={'2014.1': '2014'})\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I transpose the DataFrame so the dates are the index." ] }, { "cell_type": "code", "execution_count": 5, "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", " \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", " \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", "
ChristianProtestantCatholicMormonOrthodox ChristianOther ChristianNon-Christian faithsJewishMuslimBuddhistHinduOtherUnaffiliatedAtheistAgnosticNothing in particularDon’t know/refusedNaN
200977512321NaN5211<121723122100
201076512321NaN521<1<121722122100
201175502321NaN5211<121923141100
201273492221NaN6211<121923142100
201373492221NaN5211<122033142100
201471482121NaN6211122133141100
201569462121NaN6111122444161100
201668442121NaN7211132344162100
201767452021NaN6211122545162100
20196543202<1NaN7211132645172100
\n", "
" ], "text/plain": [ " Christian Protestant Catholic Mormon Orthodox Christian Other Christian \\\n", "2009 77 51 23 2 1 NaN \n", "2010 76 51 23 2 1 NaN \n", "2011 75 50 23 2 1 NaN \n", "2012 73 49 22 2 1 NaN \n", "2013 73 49 22 2 1 NaN \n", "2014 71 48 21 2 1 NaN \n", "2015 69 46 21 2 1 NaN \n", "2016 68 44 21 2 1 NaN \n", "2017 67 45 20 2 1 NaN \n", "2019 65 43 20 2 <1 NaN \n", "\n", " Non-Christian faiths Jewish Muslim Buddhist Hindu Other Unaffiliated \\\n", "2009 5 2 1 1 <1 2 17 \n", "2010 5 2 1 <1 <1 2 17 \n", "2011 5 2 1 1 <1 2 19 \n", "2012 6 2 1 1 <1 2 19 \n", "2013 5 2 1 1 <1 2 20 \n", "2014 6 2 1 1 1 2 21 \n", "2015 6 1 1 1 1 2 24 \n", "2016 7 2 1 1 1 3 23 \n", "2017 6 2 1 1 1 2 25 \n", "2019 7 2 1 1 1 3 26 \n", "\n", " Atheist Agnostic Nothing in particular Don’t know/refused NaN \n", "2009 2 3 12 2 100 \n", "2010 2 2 12 2 100 \n", "2011 2 3 14 1 100 \n", "2012 2 3 14 2 100 \n", "2013 3 3 14 2 100 \n", "2014 3 3 14 1 100 \n", "2015 4 4 16 1 100 \n", "2016 4 4 16 2 100 \n", "2017 4 5 16 2 100 \n", "2019 4 5 17 2 100 " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = df.transpose()\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now I can convert the index from string to int." ] }, { "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", " \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", " \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", "
ChristianProtestantCatholicMormonOrthodox ChristianOther ChristianNon-Christian faithsJewishMuslimBuddhistHinduOtherUnaffiliatedAtheistAgnosticNothing in particularDon’t know/refusedNaN
200977512321NaN5211<121723122100
201076512321NaN521<1<121722122100
201175502321NaN5211<121923141100
201273492221NaN6211<121923142100
201373492221NaN5211<122033142100
201471482121NaN6211122133141100
201569462121NaN6111122444161100
201668442121NaN7211132344162100
201767452021NaN6211122545162100
20196543202<1NaN7211132645172100
\n", "
" ], "text/plain": [ " Christian Protestant Catholic Mormon Orthodox Christian Other Christian \\\n", "2009 77 51 23 2 1 NaN \n", "2010 76 51 23 2 1 NaN \n", "2011 75 50 23 2 1 NaN \n", "2012 73 49 22 2 1 NaN \n", "2013 73 49 22 2 1 NaN \n", "2014 71 48 21 2 1 NaN \n", "2015 69 46 21 2 1 NaN \n", "2016 68 44 21 2 1 NaN \n", "2017 67 45 20 2 1 NaN \n", "2019 65 43 20 2 <1 NaN \n", "\n", " Non-Christian faiths Jewish Muslim Buddhist Hindu Other Unaffiliated \\\n", "2009 5 2 1 1 <1 2 17 \n", "2010 5 2 1 <1 <1 2 17 \n", "2011 5 2 1 1 <1 2 19 \n", "2012 6 2 1 1 <1 2 19 \n", "2013 5 2 1 1 <1 2 20 \n", "2014 6 2 1 1 1 2 21 \n", "2015 6 1 1 1 1 2 24 \n", "2016 7 2 1 1 1 3 23 \n", "2017 6 2 1 1 1 2 25 \n", "2019 7 2 1 1 1 3 26 \n", "\n", " Atheist Agnostic Nothing in particular Don’t know/refused NaN \n", "2009 2 3 12 2 100 \n", "2010 2 2 12 2 100 \n", "2011 2 3 14 1 100 \n", "2012 2 3 14 2 100 \n", "2013 3 3 14 2 100 \n", "2014 3 3 14 1 100 \n", "2015 4 4 16 1 100 \n", "2016 4 4 16 2 100 \n", "2017 4 5 16 2 100 \n", "2019 4 5 17 2 100 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.index = df.index.astype(int)\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And write the result to a file." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "df.to_csv('pew_religion_table1.csv')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [] }, { "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.4" } }, "nbformat": 4, "nbformat_minor": 2 }