-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotes.py
60 lines (46 loc) · 2.12 KB
/
notes.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Really helpful pandas cheat sheet:
# https://towardsdatascience.com/pandas-equivalent-of-10-useful-sql-queries-f79428e60bd9
# How to plot histograms:
# https://matplotlib.org/3.1.3/gallery/statistics/hist.html
#
# Code snippets
#
%matplotlib notebook
def graph_dispatches_for_dept_by_month(dept_name):
return graph_dispatches_by_month(dept_name, df['Department'] == dept_name)
def graph_dispatches_by_month(name, filter_result):
events = df[ filter_result ]
d = pd.DataFrame({f"{name} Dispatches": events.index},
index=events['Dispatch Time'])
events_monthly = d.groupby(pd.Grouper(freq='M')).count()
return events_monthly.plot(title=f"{name} Dispatches by Month")
from datetime import datetime
name = dept_name = "Fairview Fire"
events = df
events = events[ events['Department'] == dept_name ]
events = events[ events['Dispatch Time'] >= datetime(2015, 7, 1) ]
events = events[ events['Dispatch Time'] < datetime(2016, 7, 1) ]
d = pd.DataFrame({f"{name} Dispatches": events.index},
index=events['Dispatch Time'])
events_monthly = d.groupby(pd.Grouper(freq='W')).count()
p = events_monthly.plot(title=f"{name} Dispatches by Week")
from datetime import datetime
name = dept_name = "Fairview Fire"
events = df
events = events[ events['Department'] == dept_name ]
events = events[ events['Dispatch Time'] >= datetime(2016, 1, 1) ]
events = events[ events['Dispatch Time'] < datetime(2016, 3, 1) ]
d = pd.DataFrame({f"{name} Dispatches": events.index},
index=events['Dispatch Time'])
events_monthly = d.groupby(pd.Grouper(freq='D')).count()
p = events_monthly.plot(title=f"{name} Dispatches by Day")
from datetime import datetime
name = dept_name = "Fairview Fire"
events = df
events = events[ events['Department'] == dept_name ]
events = events[ events['Dispatch Time'] >= datetime(2016, 1, 20) ]
events = events[ events['Dispatch Time'] < datetime(2016, 1, 26) ]
d = pd.DataFrame({f"{name} Dispatches": events.index},
index=events['Dispatch Time'])
events_monthly = d.groupby(pd.Grouper(freq='H')).count()
p = events_monthly.plot(title=f"{name} Dispatches by Hour")