import numpy as np # useful for many scientific computing in Python
import pandas as pd # primary data structure library
import folium
from folium.plugins import FastMarkerCluster
from folium import plugins
Download the data from my Github
path3 = 'https://raw.githubusercontent.com/victor-onofre/Capstone-Project/master/Crime%20data/CRIME_CLASSIFICATION_NEIGHBORHOOD_MORE_VIOLENCE_coordinates_Tijuana_2014_to_2019.csv'
crime_location = pd.read_csv(path3)
crime_location.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 70296 entries, 0 to 70295 Data columns (total 16 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 CRIME_CLASSIFICATION 70296 non-null object 1 NEIGHBORHOOD_OF_THE_CRIME 70296 non-null object 2 DATE OF RECORD OF THE CRIME 70296 non-null object 3 TIME OF THE CRIME 70296 non-null object 4 MUNICIPIO 70296 non-null object 5 DATE OF THE CRIME 70296 non-null object 6 day_of_week 70296 non-null object 7 year 70296 non-null int64 8 month 70296 non-null int64 9 day 70296 non-null int64 10 Hour 70296 non-null float64 11 counts 70296 non-null float64 12 ADDRESS 70296 non-null object 13 location 56029 non-null object 14 latitude 70296 non-null float64 15 longitude 70296 non-null float64 dtypes: float64(4), int64(3), object(9) memory usage: 8.6+ MB
crime_location.head()
CRIME_CLASSIFICATION | NEIGHBORHOOD_OF_THE_CRIME | DATE OF RECORD OF THE CRIME | TIME OF THE CRIME | MUNICIPIO | DATE OF THE CRIME | day_of_week | year | month | day | Hour | counts | ADDRESS | location | latitude | longitude | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | THEFT WITH VIOLENCE(IN PUBLIC AREAS) | 3 DE OCTUBRE | 01/01/19 | 02:39 | TIJUANA | 2019-01-01 | Tuesday | 2019 | 1 | 1 | 2.0 | 195.0 | 3 DE OCTUBRE,Tijuana,Mexico | 3 de Octubre, El Porvenir, Tijuana, Municipio ... | 32.460409 | -116.947183 |
1 | VEHICLE THEFT | EMPERADORES | 01/01/19 | 02:00 | TIJUANA | 2019-01-01 | Tuesday | 2019 | 1 | 1 | 2.0 | 137.0 | EMPERADORES,Tijuana,Mexico | Emperadores, Misiones de Pedregal Fraccionamie... | 32.486404 | -116.966379 |
2 | UNLAWFUL WOUNDING | RESIDENCIAL DEL BOSQUE | 01/01/19 | 23:21 | TIJUANA | 2018-12-31 | Monday | 2018 | 12 | 31 | 23.0 | 120.0 | RESIDENCIAL DEL BOSQUE,Tijuana,Mexico | NaN | 32.512400 | -116.830700 |
3 | HOMICIDE(VIOLENT) | SANCHEZ TABOADA | 01/01/19 | 01:25 | TIJUANA | 2019-01-01 | Tuesday | 2019 | 1 | 1 | 1.0 | 376.0 | SANCHEZ TABOADA,Tijuana,Mexico | Del. Sanchez Taboada, La Joya, Municipio de Ti... | 32.458767 | -117.003325 |
4 | VEHICLE THEFT | EL LAGO | 17/01/19 | 07:33 | TIJUANA | 2019-01-17 | Thursday | 2019 | 1 | 17 | 7.0 | 270.0 | EL LAGO,Tijuana,Mexico | Canalización, Calle Vía Rápida Poniente, Const... | 32.513839 | -116.968790 |
data_murder = crime_location[crime_location['CRIME_CLASSIFICATION']=='HOMICIDE(VIOLENT)']
tijuana_map = folium.Map(location=[32.5149,-117.0382],zoom_start =11.5)
data_loc= data_murder[['latitude','longitude']].values
data_loc =data_loc.tolist()
hm = plugins.HeatMap(data_loc)
hm.add_to(tijuana_map)
tijuana_map.save('Homicides_Tijuana.html')
tijuana_map
data_BUSINESS = crime_location[crime_location['CRIME_CLASSIFICATION']=='THEFT WITH VIOLENCE TO A BUSINESS']
tijuana_BUSINESS_map = folium.Map(location=[32.5149,-117.0382],zoom_start =11.5)
data_loc= data_BUSINESS[['latitude','longitude']].values
data_loc =data_loc.tolist()
hm = plugins.HeatMap(data_loc)
hm.add_to(tijuana_BUSINESS_map)
tijuana_BUSINESS_map.save('THEFT_BUSINESS_Tijuana.html')
tijuana_BUSINESS_map
Download the data from my Github
path4 = 'https://raw.githubusercontent.com/victor-onofre/Capstone-Project/master/Crime%20data/NEIGHBORHOOD_Violente_Crimes_coordinates_Tijuana_2014_to_2019.csv'
violent_crimes_location = pd.read_csv(path4)
violent_crimes_location.head()
CRIME_CLASSIFICATION | NEIGHBORHOOD_OF_THE_CRIME | DATE OF RECORD OF THE CRIME | TIME OF THE CRIME | MUNICIPIO | DATE OF THE CRIME | day_of_week | year | month | day | Hour | counts | ADDRESS | location | latitude | longitude | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | THEFT WITH VIOLENCE(IN PUBLIC AREAS) | 3 DE OCTUBRE | 01/01/19 | 02:39 | TIJUANA | 2019-01-01 | Tuesday | 2019 | 1 | 1 | 2.0 | 195.0 | 3 DE OCTUBRE,Tijuana,Mexico | 3 de Octubre, El Porvenir, Tijuana, Municipio ... | 32.460409 | -116.947183 |
1 | HOMICIDE(VIOLENT) | SANCHEZ TABOADA | 01/01/19 | 01:25 | TIJUANA | 2019-01-01 | Tuesday | 2019 | 1 | 1 | 1.0 | 376.0 | SANCHEZ TABOADA,Tijuana,Mexico | Del. Sanchez Taboada, La Joya, Municipio de Ti... | 32.458767 | -117.003325 |
2 | HOMICIDE(VIOLENT) | 3 DE OCTUBRE | 06/01/19 | 20:41 | TIJUANA | 2019-05-01 | Wednesday | 2019 | 5 | 1 | 20.0 | 195.0 | 3 DE OCTUBRE,Tijuana,Mexico | 3 de Octubre, El Porvenir, Tijuana, Municipio ... | 32.460409 | -116.947183 |
3 | THEFT WITH VIOLENCE(IN PUBLIC AREAS) | RIO TIJUANA TERCERA ETAPA | 02/01/19 | 21:05 | TIJUANA | 2019-02-01 | Friday | 2019 | 2 | 1 | 21.0 | 471.0 | RIO TIJUANA TERCERA ETAPA,Tijuana,Mexico | NaN | 32.506700 | -116.941100 |
4 | THEFT WITH VIOLENCE TO A BUSINESS | RIO TIJUANA TERCERA ETAPA | 05/01/19 | 17:55 | TIJUANA | 2019-05-01 | Wednesday | 2019 | 5 | 1 | 17.0 | 471.0 | RIO TIJUANA TERCERA ETAPA,Tijuana,Mexico | NaN | 32.506700 | -116.941100 |
# let's start again with a clean copy of the map of San Francisco
sanfran_map = folium.Map(location = [32.5149,-117.0382], zoom_start = 12)
# instantiate a mark cluster object for the incidents in the dataframe
incidents = plugins.MarkerCluster().add_to(sanfran_map)
# loop through the dataframe and add each data point to the mark cluster
for lat, lng, label, in zip(violent_crimes_location.latitude, violent_crimes_location.longitude, violent_crimes_location.CRIME_CLASSIFICATION):
folium.Marker(
location=[lat, lng],
icon=None,
popup=label,
).add_to(incidents)
# display map
sanfran_map.save('violent_crimes_Tijuana.html')