geosnap: Open-Source Neighborhood Analysis Package.
Project description
Geospatial Neighborhood Analysis in Python
geosnap
is an open-source, Python3 package for exploring, modeling, and visualizing neighborhood dynamics. Although neighborhoods are critically important for human development and public policy, they present a variety of novel challenges for urban researchers:
- there is no formally accepted scientific definition of "neighborhood"
- neighborhoods evolve through both space and time
- many different physical and social data can characterize a neighborhood
- primitive spatial units change boundaries over time
geosnap aims to help fill these gaps. It provides a suite of tools for creating socio-spatial datasets, harmonizing those datasets into consistent set of time-static boundaries, and modeling neighborhood change using classic and spatial statistical methods.
Since there is no accepted definition of "neighborhood," most quantitative studies involving neighborhood effects or neighborhood dynamics use census data and their administrative boundaries to define spatial areas that reasonably approximate neighborhoods. In the U.S., this typically means using census tracts, since they have a relatively small spatial footprint and a wide variety of variables are tabulated at that scale. For this reason, geosnap's first release is targeted at researchers working with US Census tract data. This allows the software to make available a wide variety of data and commonly-used variables with minimal interaction from the end-user. Later releases will expand functionality to other geographies and data sources.
Modules:
data
Ingest, create, and manipulate space-time datasets
analyze
Analyze and model neighborhood dynamics
harmonize
Harmonize neighborhood boundaries into consistent, stable units using spatial statistical methods
visualize
Visualize neighborhood dynamics
Installation
The recommended method for installing geosnap is with anaconda. To get started with the development version, clone this repository or download it manually then cd
into the directory and run the following commands:
$ conda env create -f environment.yml
$ source activate geosnap
$ python setup.py develop
This will download the appropriate dependencies and install geosnap in its own conda environment.
Getting Started
The quickest way to get started analyzing the space-time dynamics of neighborhoods is by importing a longitudinal dataset that has already been harmonized into consistent boundaries. We recommend the (free) Longitudinal Tract Database to get started.
You can import LTDB using the instructions in this example notebook. Note: you only need to import the database once and it will be stored inside geosnap
for repeated queries
Once the LTDB data is installed, check out the other notebooks in the example directory, then start ipython
or a Jupyter Notebook and hack away
Development
geosnap development is hosted on github
Bug reports
To search for or report bugs, please see geosnap's issues
License information
See the file "LICENSE.txt" for information on the history of this software, terms & conditions for usage, and a DISCLAIMER OF ALL WARRANTIES.
Funding
This project is supported by NSF Award #1733705, Neighborhoods in Space-Time Contexts
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
File details
Details for the file geosnap-0.0.2.tar.gz
.
File metadata
- Download URL: geosnap-0.0.2.tar.gz
- Upload date:
- Size: 9.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.21.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87a45285afc0899877785f14fc3ee56dc1476175289f30b2658c19a4dc26ac31 |
|
MD5 | 04557cc1413c66e02c91ae7dbd722469 |
|
BLAKE2b-256 | 8597270b11191717a62c97421945705faad3e13fd2f94018fdd5dc9812fe79dc |
File details
Details for the file geosnap-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: geosnap-0.0.2-py3-none-any.whl
- Upload date:
- Size: 176.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.21.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dc0db1e4b2905b2ba8cf69bf9011d9eea5ab7834e4fdff19616bc0be94611d9 |
|
MD5 | 8dbacd03446f8bfce559768d2c4e05e1 |
|
BLAKE2b-256 | 99d9a4f805ad6bf6842380f243ab990f0d56f612af02402e2ff39a7b614a767f |