Skip to main content

pycensuskr

Binder PyPI Downloads

A Python package for Korean district-level census and geographic data.

Installation

PyPI

pip install pycensuskr

From source

git clone https://github.com/sigmafelix/pycensuskr.git
cd pycensuskr
pip install -e .

# python setup.py install

For development

git clone https://github.com/sigmafelix/pycensuskr.git
cd pycensuskr
pip install -e ".[dev]"

Usage

from pycensuskr import CensusKR
from matplotlib import pyplot as plt
import geopandas as gpd

# Create a CensusData instance
census = CensusKR()

# load specific year data
data_2020 = census.load_data(year = 2020)
print(data_2020)

# load district boundaries for a specific year
districts_2020 = census.load_districts(year = 2020)
districts_2020["adm2_re"] = districts_2020["adm2_code"].astype(str).str.slice(0,4)
# aggregate geometries by adm2_re
districts_2020 = districts_2020.dissolve(by="adm2_re", as_index=False)
districts_2020["adm2_code"] = districts_2020["adm2_re"] + "0"
districts_2020["adm2_code"] = districts_2020["adm2_code"].astype(int)

# cleaned data with variable types
df_tax_2020 = census.anycensus(year = 2020, type = "tax", aggregator = "sum")

districts_tax_2020 = districts_2020.merge(df_tax_2020, on="adm2_code")
print(districts_tax_2020)

districts_tax_2020.plot("income_labor_mil")
plt.show()

Filter non-/autonomous district codes

from pycensuskr import CensusKR

# Create a CensusData instance
census = CensusKR()

# load population data
pop20 = census.anycensus(year=2020, type="population")
pop20_nonauto = census.detect_adm2_type(df=pop20, mode="non")

Load 2020 adm3-level data

  • From version 0.3.0, users can load adm3 (Eup/Myeon/Dong) level data and boundaries. To note, adm3 level data is currently available for population, housing, mortality, and economy types in 2020.
from pycensuskr import CensusKR

# Create a CensusData instance
census = CensusKR()

# load population data
pop20_adm3 = census.anycensus(year = 2020, type = "population", level = "adm3")

# load housing data
housing20_adm3 = census.anycensus(year = 2020, type = "housing", level = "adm3")

Notes on data updates

Our data cleaning and processing pipeline is based on the original R package tidycensuskr. We periodically synchronize the bundled datasets used in this package with those in R tidycensuskr and tidycensuskr.sf to ensure accuracy and relevance. Please refer to the tidycensuskr webpage for details on the latest data updates and changes.

Data license disclaimer

{style="fig-align: center; width: 200px;"}

Development

Running tests

pytest

License

This project is licensed under the MIT License - see the LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycensuskr-0.3.0.tar.gz (34.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pycensuskr-0.3.0-py3-none-any.whl (34.1 MB view details)

Uploaded Python 3

File details

Details for the file pycensuskr-0.3.0.tar.gz.

File metadata

  • Download URL: pycensuskr-0.3.0.tar.gz
  • Upload date:
  • Size: 34.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pycensuskr-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7223872b201e73eba2fc959adf4d488673f56796564f25209e80ef239ef7dad8
MD5 655abfd75076e75ecbd4617a5d584e38
BLAKE2b-256 56c68f2aeddb14ec312555df7ecb88f41631ec52b98e3a5add16ffeb0135317c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycensuskr-0.3.0.tar.gz:

Publisher: build-and-release.yml on sigmafelix/pycensuskr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycensuskr-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pycensuskr-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 34.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pycensuskr-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1678516f1d319656b6250c64a44c4401f8ef39ab9de8ec5096143dd9f4994666
MD5 6f7efc07c634fb17236b52e61daad0a5
BLAKE2b-256 461e68dbc548339a3d9532cd028a1ecbb21f8d0a35f4d7c47bf2584d1478ec36

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycensuskr-0.3.0-py3-none-any.whl:

Publisher: build-and-release.yml on sigmafelix/pycensuskr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page