The usaddress library made easy with Pandas.
Project description
pandas-usaddress
The usaddress library made easy with Pandas.
Also supports standardizing addresses to meet USPS standards.
Installation
pip install pandas-usaddress
Usage
Basic Parsing
import pandas as pd
import pandas_usaddress
#load dataframe
df = pd.read_csv('test_file.csv')
#initiate usaddress
df = pandas_usaddress.tag(df, ['address_field'])
#send output to csv
df.to_csv('parsed_output.csv')
#------------------------------additional details------------------------------
#Output and fields will be identical to usaddress
Parsing with Address Standardization
import pandas as pd
import pandas_usaddress
#load dataframe
df = pd.read_csv('test_file.csv')
#initiate usaddress
df = pandas_usaddress.tag(df, ['address_field'], granularity='medium', standardize=True)
#send output to csv
df.to_csv('parsed_output.csv')
#------------------------------additional details------------------------------
#The standard output for usaddress has a lot of fields. The granularity parameter
#allows you to condense the results you get back for different types of analysis.
#see parameter documentation below for all granularity options.
#Addresses are often unstandardized. The same address can come as 123 1st ST, or
#123 First Street, etc. This can cause issues with analysis such as aggregation,
#or record matching. The standardize parameter attempts to standardize the address
#to US Postal Service (USPS) standards.
Parsing with Address Standardization
import pandas as pd
import pandas_usaddress
#load dataframe
df = pd.read_csv('test_file.csv')
#initiate usaddress
df = pandas_usaddress.tag(df, ['street1', 'street2', 'city', 'state'], granularity='single', standardize=True)
#send output to csv
df.to_csv('parsed_output.csv')
#------------------------------additional details------------------------------
#You can also use pandas-usaddress to concatenate and parse multiple address lines.
#This can be helpful when you are working with two datasets that have different
#field names and you want the field names to be standardized using a specific level of
#granularity. It's pretty common for instance that in one dataset will concatenate
#address line 1 and 2, and another will not.
#You will help the parser do it's job if you try to concatenate fields in approximately
#same order that you would write them on an envelope.
#In this instance, we are taking multiple address fields and converting them into a
#single address line. That's fine to do!
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_usaddress-0.11.tar.gz
(298.7 kB
view hashes)
Built Distribution
Close
Hashes for pandas_usaddress-0.11-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67551237788061e51ab7c2484095eda2f996e30dbf3a72fb78bf9aab589f9002 |
|
MD5 | 3ef09acd9cd0d31d9ffc684a8158f946 |
|
BLAKE2b-256 | 3a1d7f7ff0dbe571828cf6cf8a5158f0310a22df1a9a8f6e3884598b1d8e41f3 |