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-lookuppackage, which createds a needless dependency on Agate. Also, I don't think I like monkey-patchingDataFrame.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3c689efc05d9e528f7938a23050abb6650487e679cf27890fa00a0fc30359f9
|
|
| MD5 |
bce1af96e361eb770ec4aa4b67e80453
|
|
| BLAKE2b-256 |
4a6736f130788e87f552e389dda1e142a469293920b255918398c334ae16ba95
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b58f6c277ec5f16598624a7991f1171d4da49457f464675c7e34078a28c6f320
|
|
| MD5 |
0903afc84a3f149ac1feb05e01a8c064
|
|
| BLAKE2b-256 |
0ba8b700161d7370691143f92f897b79fd7e38a98c993ba289c6a87eef1d47ea
|