Geo

Geo / GeosPy / 0.1.0

README.md

Introduction

GeosPy is based off of Jurgens et al. (2015), implementing state-of-the-art methods for geolocation inference. It allows the user to locate nodes with unknown locations based solely on network-based relationships.

Geolocation inference is the identification of the real-world geographic location of an object on Earth based off of available data. GeosPy currently only supports network based inference methods.

Input:

  • (Required): node_location_data: Coordinates for all data points.
  • (Required): node_connections: Connected nodes.
  • (Required): infered_nodes: Node(s) that we want to infer.
  • (Optional): model_type: Type of inference model you want to use. (default = "backstorm")*

*Note: Only two type of models are supported:

  1. jakartr
  2. backstrom

Output:

  • Inferred coordinates for asked nodes.

Examples

Example 1.

  • Parameter 1: Coordinates for all data points.
  • Parameter 2: Node connections.
  • Parameter 3: Nodes asked for inference.
{
  "node_location_data": {
    "Tyler": [44, -71.5],
    "Tim": [45.5, -73.5],
    "Gwyn": [44.5, -89.5],
    "Conor":[55.0, -106.0],
    "Sam": [25.7, -80.2]
  },
  "node_connections": {
    "OffTheGrid": ["Tyler", "Sam", "Gwyn", "Conor", "Tim"]
  }
}

Output:

{
  "OffTheGrid": [45.5, -73.5]
}

Example 2.

  • Parameter 1: Coordinates for all data points.
  • Parameter 2: Node connections.
  • Parameter 3: Node asked for inference.
  • Parameter 4: Model type used for inference.
{
  "node_location_data": {
    "Tyler": [44, -71.5],
    "Tim": [45.5, -73.5],
    "Gwyn": [44.5, -89.5],
    "Conor":[55.0, -106.0],
    "Sam": [25.7, -80.2]
  },
  "node_connections": {
    "James": ["Gwyn", "Conor", "Tim"],
    "Patrick": ["Tyler", "Sam"]
  },
  "model_type": "backstrom"
}

Output:

{
  "James": [44.5,-89.5],
  "Patrick": [44,-71.5]
}

Credits

For more information, please refer to: https://github.com/tylfin/GeosPy or Geolocation Prediction in Twitter Using Social Networks: A Critical Analysis and Review of Current Practice by David Jurgens, Tyler Finnethy, James McCorriston, Yi Tian Xu, Derek Ruths. (2015)