Skip to content

Load CPS microdata into a pandas DataFrame using the Census API

License

Notifications You must be signed in to change notification settings

matt-saenz/PyCPS

Repository files navigation

PyCPS

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Downloads

Overview

Python package for loading Current Population Survey (CPS) microdata into a pandas DataFrame using the Census Bureau Data API, including basic monthly CPS and CPS ASEC microdata.

Note: This product uses the Census Bureau Data API but is not endorsed or certified by the Census Bureau.

For an R version of this package, check out cpsR.

Setup Instructions

Install the package:

pip install pycpsdata  # Alas, pycps was taken

and store your Census API key in an environment variable named CENSUS_API_KEY.

Example Usage

from pycps import get_asec

asec = get_asec(2021, ["a_age", "marsupwt"])

asec
#         a_age  marsupwt
# 0          56    687.71
# 1          57    687.71
# 2          78    646.86
# 3          65   1516.95
# 4          66   1516.95
# ...       ...       ...
# 163538     69    514.11
# 163539     70    516.25
# 163540     66    516.25
# 163541     55    386.37
# 163542     52    386.37
#
# [163543 rows x 2 columns]

asec.marsupwt.sum()
# 326195439.67