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-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
pandas-lookup-0.1.4.tar.gz
(4.6 kB
view details)
Built Distribution
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 |