#!/usr/bin/env python
# coding: utf-8
# # *Exploring Gun Deaths in US*
#
# ### The Dataset
# > The dataset for Gun Deaths in US came from [**FiveThirtyEight**](https://fivethirtyeight.com).
It contains information on gun deaths in the US from 2012 to 2014, which can be read [here](https://github.com/fivethirtyeight/guns-data).
#
# ***This Project covers topics like reading Data from `CSV Module` and `Datetime Module`.
Here, we will find Gun Deaths per Month, Gender, Ethnicity and Intent.***
# ### Exploring Data
# In[1]:
import csv
data = list(csv.reader(open("guns.csv", "r")))
data[:5]
# ### Sepearting Data and Header
# In[2]:
headers = data[0]
data = data[1:]
print(headers)
data[:5]
# ### Death Rate Per Year
# In[3]:
year_counts = {}
for i in data:
years = i[1]
if years in year_counts:
year_counts[years] += 1
else:
year_counts[years] = 1
year_counts
# ### Converting Date's Data type from String to Datetime.
Death Rate Per Date
# In[4]:
import datetime
dates = [datetime.datetime(year = int(i[1]), month = int(i[2]), day = 1) for i in data]
# print(dates[:5])
date_counts = {}
for i in dates:
if i in date_counts:
date_counts[i] += 1
else:
date_counts[i] = 1
date_counts
# ### Death Rate Per Gender
# In[9]:
sex_counts = {}
sex = [i[5] for i in data]
for i in sex:
if i in sex_counts:
sex_counts[i] += 1
else:
sex_counts[i] = 1
sex_counts
# ### Death Rate Per Race
# In[6]:
race_counts = {}
race = [i[7] for i in data]
for i in race:
if i in race_counts:
race_counts[i] += 1
else:
race_counts[i] = 1
race_counts
# ### Death Rate Per Intent
# In[5]:
intent_counts = {}
intent_data = [i[3] for i in data]
for i in intent_data:
if i in intent_counts:
intent_counts[i] += 1
else:
intent_counts[i] = 1
intent_counts
# ### Exploring Data from Census.csv
# In[13]:
census = list(csv.reader(open("census.csv", "r")))
census
# ### Total Population per Race
# In[14]:
mapping = {'Asian/Pacific Islander': int(census[1][14]) + int(census[1][15]),
'Black': int(census[1][12]),
'Hispanic': int(census[1][11]),
'Native American/Native Alaskan': int(census[1][13]),
'White': int(census[1][10])}
mapping
# ### Death Rate Per Hundred Thousand Per Race
# In[9]:
race_per_hundredk = {}
for i in race_counts:
race_per_hundredk[i] = round((race_counts[i]/mapping[i])*100000, 2)
race_per_hundredk
# ### Homicide Rate Per Hundred Thousand Per Race
# In[12]:
homicide_race_counts = {}
for i, race in enumerate(races):
if intent_data[i] == "Homicide":
if race in homicide_race_counts:
homicide_race_counts[race] += 1
else:
homicide_race_counts[race] = 1
for i in homicide_race_counts:
homicide_race_counts[i] = round((homicide_race_counts[i]/mapping[i]) * 100000, 2)
homicide_race_counts