{ "info": { "author": "geosnap developers", "author_email": "ek@knaaptime.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7" ], "description": "# Geospatial Neighborhood Analysis in Python\n[![Build Status](https://travis-ci.com/spatialucr/geosnap.svg?branch=master)](https://travis-ci.com/spatialucr/geosnap) [![Coverage Status](https://coveralls.io/repos/github/spatialucr/geosnap/badge.svg?branch=master)](https://coveralls.io/github/spatialucr/geosnap?branch=master&service=github)\n\n\"geosnap\"\n\n`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:\n\n- there is no formally accepted scientific definition of [\"neighborhood\"](https://www.cnu.org/publicsquare/2019/01/29/once-and-future-neighborhood)\n- neighborhoods evolve through both space and time\n- many different physical and social data can characterize a neighborhood\n- primitive spatial units change boundaries over time\n\ngeosnap 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. \n\n\nDC Transitions\n\n![](doc/figs/Washington-Arlington-Alexandria_DC-VA-MD-WV_transition_matrix.png)\n\n\n\nSince there is no accepted definition of \"neighborhood,\" most quantitative studies involving [neighborhood effects](https://www.annualreviews.org/doi/10.1146/annurev.soc.28.110601.141114) or [neighborhood dynamics](https://www.sciencedirect.com/science/article/pii/S0094119000921818) 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. \n\n## Modules:\n\n#### `data` \nIngest, create, and manipulate space-time datasets\n#### `analyze` \nAnalyze and model neighborhood dynamics\n#### `harmonize` \nHarmonize neighborhood boundaries into consistent, stable units using spatial statistical methods\n#### `visualize` \nVisualize neighborhood dynamics\n\n\n## Installation\nThe recommended method for installing geosnap is with [anaconda](https://www.anaconda.com/download/). To get started with the development version, clone this repository or download it manually then `cd` into the directory and run the following commands:\n\n```bash\n$ conda env create -f environment.yml\n$ source activate geosnap \n$ python setup.py develop\n```\n\nThis will download the appropriate dependencies and install geosnap in its own conda environment.\n\n## Getting Started\n\nThe 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. \n\nYou can import LTDB using the instructions in this [example notebook](https://github.com/spatialucr/geosnap/blob/master/examples/01_getting_started.ipynb). **Note:** *you only need to import the database once and it will be stored inside `geosnap` for repeated queries*\n\nOnce the LTDB data is installed, check out the other notebooks in the [example](https://github.com/spatialucr/geosnap/tree/master/geosnap/examples) directory, then start `ipython` or a Jupyter Notebook and hack away\n\n\n## Development\n\ngeosnap development is hosted on [github](https://github.com/spatialucr/geosnap)\n\n\n## Bug reports\n\nTo search for or report bugs, please see geosnap's [issues](http://github.com/spatialucr/geosnap/issues)\n\n\n## License information\n\nSee the file \"LICENSE.txt\" for information on the history of this\nsoftware, terms & conditions for usage, and a DISCLAIMER OF ALL\nWARRANTIES.\n\n## Funding\n This project is supported by NSF Award #1733705, [Neighborhoods in Space-Time Contexts](https://www.nsf.gov/awardsearch/showAward?AWD_ID=1733705&HistoricalAwards=false)\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/spatialucr/geosnap", "keywords": "spatial statistics, neighborhoods, demography", "license": "", "maintainer": "", "maintainer_email": "", "name": "geosnap", "package_url": "https://pypi.org/project/geosnap/", "platform": "", "project_url": "https://pypi.org/project/geosnap/", "project_urls": { "Homepage": "http://github.com/spatialucr/geosnap" }, "release_url": "https://pypi.org/project/geosnap/0.0.2/", "requires_dist": [ "pandas", "cython", "geopandas", "hdbscan", "matplotlib", "scikit-learn", "seaborn", "pyarrow", "libpysal", "mapclassify", "spenc", "giddy", "xlrd", "cenpy", "quilt", "region" ], "requires_python": ">=3.5", "summary": "geosnap: Open-Source Neighborhood Analysis Package.", "version": "0.0.2" }, "last_serial": 5146961, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "a8e8e5a2f6b175a4dac3e5d482666d0c", "sha256": "279f6828c2d9c13f58965f2e5d3adf7ccd7039f0512f5e1a98dc286313d93f7a" }, "downloads": -1, "filename": "geosnap-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a8e8e5a2f6b175a4dac3e5d482666d0c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 176533, "upload_time": "2019-04-15T21:22:41", "url": "https://files.pythonhosted.org/packages/cb/27/90121517773caf876f4c79680bc6937579620a7b3c010d738c7ef9027a56/geosnap-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d0dd5b57298c42fa596b94833b8966bf", "sha256": "bb0c6829619ca64c1f9ec608bb8d04de7cb1c6aa9d587c0b1c1a7856fb9731be" }, "downloads": -1, "filename": "geosnap-0.0.1.tar.gz", "has_sig": false, "md5_digest": "d0dd5b57298c42fa596b94833b8966bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9130839, "upload_time": "2019-04-15T21:22:45", "url": "https://files.pythonhosted.org/packages/0e/29/9e33baef46fbc7da3302d03543588e0fc1f742c4a607fd46467d67ca1ec9/geosnap-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "8dbacd03446f8bfce559768d2c4e05e1", "sha256": "4dc0db1e4b2905b2ba8cf69bf9011d9eea5ab7834e4fdff19616bc0be94611d9" }, "downloads": -1, "filename": "geosnap-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "8dbacd03446f8bfce559768d2c4e05e1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 176543, "upload_time": "2019-04-15T21:58:48", "url": "https://files.pythonhosted.org/packages/99/d9/a4f805ad6bf6842380f243ab990f0d56f612af02402e2ff39a7b614a767f/geosnap-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04557cc1413c66e02c91ae7dbd722469", "sha256": "87a45285afc0899877785f14fc3ee56dc1476175289f30b2658c19a4dc26ac31" }, "downloads": -1, "filename": "geosnap-0.0.2.tar.gz", "has_sig": false, "md5_digest": "04557cc1413c66e02c91ae7dbd722469", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9130865, "upload_time": "2019-04-15T21:58:51", "url": "https://files.pythonhosted.org/packages/85/97/270b11191717a62c97421945705faad3e13fd2f94018fdd5dc9812fe79dc/geosnap-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8dbacd03446f8bfce559768d2c4e05e1", "sha256": "4dc0db1e4b2905b2ba8cf69bf9011d9eea5ab7834e4fdff19616bc0be94611d9" }, "downloads": -1, "filename": "geosnap-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "8dbacd03446f8bfce559768d2c4e05e1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 176543, "upload_time": "2019-04-15T21:58:48", "url": "https://files.pythonhosted.org/packages/99/d9/a4f805ad6bf6842380f243ab990f0d56f612af02402e2ff39a7b614a767f/geosnap-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04557cc1413c66e02c91ae7dbd722469", "sha256": "87a45285afc0899877785f14fc3ee56dc1476175289f30b2658c19a4dc26ac31" }, "downloads": -1, "filename": "geosnap-0.0.2.tar.gz", "has_sig": false, "md5_digest": "04557cc1413c66e02c91ae7dbd722469", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9130865, "upload_time": "2019-04-15T21:58:51", "url": "https://files.pythonhosted.org/packages/85/97/270b11191717a62c97421945705faad3e13fd2f94018fdd5dc9812fe79dc/geosnap-0.0.2.tar.gz" } ] }