Metadata-Version: 2.2
Name: geo-sampling
Version: 0.1.0
Summary: Scripts for sampling Geo data sets by the specific region name
Home-page: https://github.com/soodoku/geo_sampling
Author: Suriyan Laohaprapanon, Gaurav Sood
Author-email: suriyant@gmail.com, gsood07@gmail.com
License: MIT
Keywords: geo street road openstreetmap osm city
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Scientific/Engineering :: GIS
Classifier: Topic :: Scientific/Engineering :: Visualization
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: pyshp>=2.3.1
Requires-Dist: matplotlib>=3.5.0
Requires-Dist: pyproj>=3.3.0
Requires-Dist: Shapely>=2.0.0
Requires-Dist: utm>=0.7.0
Requires-Dist: beautifulsoup4>=4.10.0
Requires-Dist: requests>=2.32.0
Provides-Extra: dev
Requires-Dist: check-manifest; extra == "dev"
Provides-Extra: test
Requires-Dist: coverage; extra == "test"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

Geo sampling: Randomly sample locations on streets
===================================================

.. image:: https://img.shields.io/pypi/v/geo_sampling.svg?maxAge=3600
    :target: https://pypi.python.org/pypi/geo_sampling
.. image:: https://readthedocs.org/projects/geo-sampling/badge/?version=latest
    :target: http://geo-sampling.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status
.. image:: https://pepy.tech/badge/geo-sampling
    :target: https://pepy.tech/project/geo-sampling

Say you want to learn about the average number of potholes per kilometer of street in a city. Or estimate a similar such quantity. To estimate the quantity, you need to sample locations on the streets. This package helps you sample those locations. In particular, the package implements the following sampling strategy:

1. **Sampling Frame**: Get all the streets in the region of interest from `OpenStreetMap <https://www.openstreetmap.org/#map=5/51.500/-0.100>`_. To accomplish that, the package first downloads administrative boundary data for the country in which the region is located in ESRI format from http://www.gadm.org/country The administrative data is in multiple levels, for instance, cities are nested in states, which are nested in countries. The user can choose a city or state, but not a portion of a city. And then the package uses the `pyshp package <https://pypi.python.org/pypi/pyshp>`_ to build a URL for the site http://extract.bbbike.org from which we can download the OSM data. 

2. **Sampling Design**:
	
	* For each street (or road), starting from one end of the street, we split the street into .5 km segments till we reach the end of the street. (The last segment, or if the street is shorter than .5km, the only segment, can be shorter than .5 km.) 

	* Get the lat/long of starting and ending points of each of the segments. And assume that the street is a straight line between the .5 km segment.  

	* Next, create a database of all the segments 

	* Sample rows from the database and produce a CSV of the sampled segments 

	* Plot the lat/long --- filling all the area within the segment. These shaded regions are regions for which data needs to be collected.

3. **Data Collection**: Collect data on the highlighted segments.

Prerequisites
=============

There are a couple dependencies that need to be built from source on Windows so you may need to install `Microsoft Visual C++ Compiler for Python 2.7 <https://www.microsoft.com/en-us/download/details.aspx?id=44266>`_.

Installation
============

Prepare the working directory. We recommend that you install in the Python virtual environment.

::

    mkdir geo_sampling
    cd geo_sampling
    virtualenv -p python2.7 venv
    . venv/bin/activate

Upgrade Python packages `pip` and `setuptools` to the latest version.

::

    pip install --upgrade pip setuptools


Install geo-sampling package from PyPI.

::

    pip install geo-sampling


Documentation
==============

*  `More information on installation <docs/install.rst>`_
*  `Usage <docs/usage.rst>`_
*  `Sample workflow <docs/workflow.rst>`_

For more information please visit the `project documentation page <http://geo-sampling.readthedocs.io/en/latest/>`_.

Downloads
==========
As of February 4th, 2018, the package had been downloaded nearly 5,000 times (see the `saved BigQuery <https://console.cloud.google.com/bigquery?sq=267723140544:c57a4d5f24cd4bc7b8546d04928b5cc5>`__).

Authors
=======

Suriyan Laohaprapanon and Gaurav Sood

License
=======

Scripts are released under the `MIT License <LICENSE>`__.
