Skip to main content

A package for aggregating and merging US geographic data frames.

Project description

USAggregate

USAggregate is a Python package for aggregating and merging US relational data frames. Current version is 1.1.1.

Example Use Case

Merging demographic data at the zip code level with ice cream sales data at the city level to measure the correlation between demographics and ice cream sales at the county level.

Installation

You can install the package using pip:

pip install USAggregate

Use Notes

Users will need to manually change geographic identifier columns to 'tract', 'zipcode', 'city', 'county', 'COUNTYFP' or 'state'. Tracts can be aggregated to further levels without additional info. Zip codes can be aggregated to further levels without additional info. Data at the city our county levels will need state information as well due to duplicate names. If each data frame you wish to aggregate has a year identifier and would like to group by year, name the column 'Year'. If you would like to group by other timeframes (day, week, month, and quarter are available options) label your columns 'Date'. In this version, users can also specify specific columns they would like to be aggregated using a method differing from the global option set.

Below is an example of package usage.

import pandas as pd
import numpy as np
from USAggregate import usaggregate

data_zip = pd.DataFrame({
    'zipcode': ['98199', '98103', '98001', '98002', '91360', '91358', '93001', '93003', '98199', '98103', '98001', '98002', '91360', '91358', '93001', '93003'],
    'value1': [np,nan, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2],
    'chr1': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
    'Year': [2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011]
})

data_city = pd.DataFrame({
    'city': ['Seattle', 'Auburn', 'Thousand Oaks', 'Ventura', 'Seattle', 'Auburn', 'Thousand Oaks', 'Ventura'],
    'state': ['WA', 'WA', 'CA', 'CA', 'WA', 'WA', 'CA', 'CA'],
    'value2': [np.nan, '2', '3', '4', '1', '2', '3', '4'],
    'chr2': [np.nan, 'J', 'K', 'L', 'I', 'J', 'K', 'L'],
    'Date': ['1/1/2010', '1/1/2010', '1/1/2010', '1/1/2010', '1/1/2011', '1/1/2011', '1/1/2011', '1/1/2011']
})

data_county = pd.DataFrame({
    'county': ['King County', 'Ventura County', 'King County', 'Ventura County'],
    'state': ['Washington', 'California', 'Washington', 'California'],
    'value3': [5, 6, 5, 6],
    'chr3': ['M', 'N', 'M', 'N'],
    'Year': ['2010', '2010', '2011', '2011']
})

df = usaggregate(
    data=[data_city, data_zip, data_county],
    level='county',
    agg_numeric_geo='sum',
    agg_character_geo='first',
    col_specific_agg_num_geo={'value2': 'mean'},
    col_specific_agg_chr_geo={'chr1': 'last'},
    time_period='year'
)

print(df)

Project details


Download files

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

Source Distribution

usaggregate-1.1.11.tar.gz (833.6 kB view details)

Uploaded Source

Built Distribution

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

USAggregate-1.1.11-py3-none-any.whl (831.9 kB view details)

Uploaded Python 3

File details

Details for the file usaggregate-1.1.11.tar.gz.

File metadata

  • Download URL: usaggregate-1.1.11.tar.gz
  • Upload date:
  • Size: 833.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for usaggregate-1.1.11.tar.gz
Algorithm Hash digest
SHA256 731b92403412c572bb87a7297125e55a9dbc2a8982a2cdae1ce2eae003aa6f58
MD5 1545f1920828bf2511416c2004156d18
BLAKE2b-256 b178ae953bd69d16ef1278911c6f1a8fa8be6c92d692fc0938aba35a24a7201d

See more details on using hashes here.

File details

Details for the file USAggregate-1.1.11-py3-none-any.whl.

File metadata

  • Download URL: USAggregate-1.1.11-py3-none-any.whl
  • Upload date:
  • Size: 831.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for USAggregate-1.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 3a3ca60df80f9528c50981c66f1b1d75e792773d0856b067ac822b4c4bc54841
MD5 1dbdeef5f263782f2a9370b7f6fdd683
BLAKE2b-256 bfbe33a9fafd17f70659e487098d151e74f96722b5da4ede088b72a765486811

See more details on using hashes here.

Supported by

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