Skip to main content

pandas-lookup adds remote lookup tables to a Pandas DataFrame.

Project description

pandas-lookup

A port of agate-lookup that provides the lookup in Pandas DataFrames instead of Agate Tables.

This uses lookup tables from Wireservice's lookup project.

Installation

pip install pandas-lookup

Look up a column from a lookup table

When the key in your data is the same as the key in the lookup table:

>>> import pandaslookup
>>> import pandas as pd
>>> df = pd.DataFrame({'usps': ['CT', 'NY', 'NJ']})
>>> print(df)
  state_abbr
0         CT
1         NY
2         NJ
>>> df.pipe(pandaslookup.lookup, 'usps', 'state')
  usps        state
0   CT  Connecticut
1   NY     New York
2   NJ   New Jersey

When the key in your data is different than the key in the lookup table:

>>> import pandaslookup
>>> import pandas as pd
>>> df = pd.DataFrame({'state_abbr': ['CT', 'NY', 'NJ']})
>>> print(df)
  state_abbr
0         CT
1         NY
2         NJ
>>> df.pipe(pandaslookup.lookup, 'state_abbr', 'state', lookup_key='usps')
  usps        state
0   CT  Connecticut
1   NY     New York
2   NJ   New Jersey

Retrieve a table without joining

>>> import pandaslookup
>>> table = pandaslookup.from_lookup(['usps', 'year'], 'population')
>>> print(table.head())
  usps  year  population
0   AL  1970     3454557
1   AL  1971     3497349
2   AL  1972     3540003
3   AL  1973     3580759
4   AL  1974     3627778

Installing for development

pipenv install --dev -e .

Running tests

pipenv run python -m unittest

Prior art

  • harbolkn/pandas-lookup: This is the same idea, but it relies on the agate-lookup package, which createds a needless dependency on Agate. Also, I don't think I like monkey-patching DataFrame.

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

pandas-lookup-0.1.4.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

pandas_lookup-0.1.4-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file pandas-lookup-0.1.4.tar.gz.

File metadata

  • Download URL: pandas-lookup-0.1.4.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.4

File hashes

Hashes for pandas-lookup-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a3c689efc05d9e528f7938a23050abb6650487e679cf27890fa00a0fc30359f9
MD5 bce1af96e361eb770ec4aa4b67e80453
BLAKE2b-256 4a6736f130788e87f552e389dda1e142a469293920b255918398c334ae16ba95

See more details on using hashes here.

File details

Details for the file pandas_lookup-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: pandas_lookup-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.4

File hashes

Hashes for pandas_lookup-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b58f6c277ec5f16598624a7991f1171d4da49457f464675c7e34078a28c6f320
MD5 0903afc84a3f149ac1feb05e01a8c064
BLAKE2b-256 0ba8b700161d7370691143f92f897b79fd7e38a98c993ba289c6a87eef1d47ea

See more details on using hashes here.

Supported by

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