In [26]:
import pandas as pd
# import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use('ggplot')
import dateutil.parser

First, I made a mistake naming the data set! It's 2015 data, not 2014 data. But yes, still use 311-2014.csv. You can rename it.

Importing and preparing your data

Import your data, but only the first 200,000 rows. You'll also want to change the index to be a datetime based on the Created Date column - you'll want to check if it's already a datetime, and parse it if not.


In [27]:
df=pd.read_csv("311-2014.csv",nrows=20000)


/usr/local/lib/python3.5/site-packages/IPython/core/interactiveshell.py:2723: DtypeWarning: Columns (8) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [28]:
df.head()


Out[28]:
Unique Key Created Date Closed Date Agency Agency Name Complaint Type Descriptor Location Type Incident Zip Incident Address ... Bridge Highway Name Bridge Highway Direction Road Ramp Bridge Highway Segment Garage Lot Name Ferry Direction Ferry Terminal Name Latitude Longitude Location
0 31015465 07/06/2015 10:58:27 AM 07/22/2015 01:07:20 AM DCA Department of Consumer Affairs Consumer Complaint Demand for Cash NaN 11360 27-16 203 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.773540 -73.788237 (40.773539552542, -73.78823697228408)
1 30997660 07/03/2015 01:26:29 PM 07/03/2015 02:08:20 PM NYPD New York City Police Department Vending In Prohibited Area Residential Building/House 10019 200 CENTRAL PARK SOUTH ... NaN NaN NaN NaN NaN NaN NaN 40.767021 -73.979448 (40.76702142171206, -73.97944780718524)
2 31950223 11/09/2015 03:55:09 AM 11/09/2015 08:08:57 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 10453 1993 GRAND AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.852671 -73.910608 (40.85267061877697, -73.91060771362552)
3 31000038 07/03/2015 02:18:32 AM 07/03/2015 07:54:48 AM NYPD New York City Police Department Noise - Commercial Loud Music/Party Club/Bar/Restaurant 11372 84-16 NORTHERN BOULEVARD ... NaN NaN NaN NaN NaN NaN NaN 40.755774 -73.883262 (40.755773786469966, -73.88326243225418)
4 30995614 07/04/2015 12:03:27 AM 07/04/2015 03:33:09 AM NYPD New York City Police Department Noise - Street/Sidewalk Loud Talking Street/Sidewalk 11216 1057 BERGEN STREET ... NaN NaN NaN NaN NaN NaN NaN 40.676175 -73.951269 (40.67617516102934, -73.9512690004692)

5 rows × 53 columns


In [77]:
df.columns


Out[77]:
Index(['Unique Key', 'Created Date', 'Closed Date', 'Agency', 'Agency Name',
       'Complaint Type', 'Descriptor', 'Location Type', 'Incident Zip',
       'Incident Address', 'Street Name', 'Cross Street 1', 'Cross Street 2',
       'Intersection Street 1', 'Intersection Street 2', 'Address Type',
       'City', 'Landmark', 'Facility Type', 'Status', 'Due Date',
       'Resolution Description', 'Resolution Action Updated Date',
       'Community Board', 'Borough', 'X Coordinate (State Plane)',
       'Y Coordinate (State Plane)', 'Park Facility Name', 'Park Borough',
       'School Name', 'School Number', 'School Region', 'School Code',
       'School Phone Number', 'School Address', 'School City', 'School State',
       'School Zip', 'School Not Found', 'School or Citywide Complaint',
       'Vehicle Type', 'Taxi Company Borough', 'Taxi Pick Up Location',
       'Bridge Highway Name', 'Bridge Highway Direction', 'Road Ramp',
       'Bridge Highway Segment', 'Garage Lot Name', 'Ferry Direction',
       'Ferry Terminal Name', 'Latitude', 'Longitude', 'Location'],
      dtype='object')

In [29]:
df.info()


<class 'pandas.core.frame.DataFrame'>
RangeIndex: 20000 entries, 0 to 19999
Data columns (total 53 columns):
Unique Key                        20000 non-null int64
Created Date                      20000 non-null object
Closed Date                       18788 non-null object
Agency                            20000 non-null object
Agency Name                       20000 non-null object
Complaint Type                    20000 non-null object
Descriptor                        19745 non-null object
Location Type                     18372 non-null object
Incident Zip                      18779 non-null object
Incident Address                  15073 non-null object
Street Name                       15069 non-null object
Cross Street 1                    13224 non-null object
Cross Street 2                    13179 non-null object
Intersection Street 1             2992 non-null object
Intersection Street 2             2965 non-null object
Address Type                      18095 non-null object
City                              18788 non-null object
Landmark                          22 non-null object
Facility Type                     9699 non-null object
Status                            20000 non-null object
Due Date                          17403 non-null object
Resolution Description            19838 non-null object
Resolution Action Updated Date    18630 non-null object
Community Board                   20000 non-null object
Borough                           20000 non-null object
X Coordinate (State Plane)        18093 non-null float64
Y Coordinate (State Plane)        18093 non-null float64
Park Facility Name                20000 non-null object
Park Borough                      20000 non-null object
School Name                       20000 non-null object
School Number                     19991 non-null object
School Region                     19597 non-null object
School Code                       19597 non-null object
School Phone Number               20000 non-null object
School Address                    20000 non-null object
School City                       20000 non-null object
School State                      20000 non-null object
School Zip                        20000 non-null object
School Not Found                  17987 non-null object
School or Citywide Complaint      0 non-null float64
Vehicle Type                      6 non-null object
Taxi Company Borough              65 non-null object
Taxi Pick Up Location             494 non-null object
Bridge Highway Name               395 non-null object
Bridge Highway Direction          395 non-null object
Road Ramp                         394 non-null object
Bridge Highway Segment            395 non-null object
Garage Lot Name                   18 non-null object
Ferry Direction                   6 non-null object
Ferry Terminal Name               17 non-null object
Latitude                          18093 non-null float64
Longitude                         18093 non-null float64
Location                          18093 non-null object
dtypes: float64(5), int64(1), object(47)
memory usage: 8.1+ MB

In [30]:
dateutil.parser.parse('07/16/1990').month


Out[30]:
7

In [31]:
def parse_date (str_date):
    return dateutil.parser.parse(str_date)#dateutil is a module, import parser class, then transform a string into a python time object
df['Created Date']= df['Created Date'].apply(parse_date)
df.head(3)


Out[31]:
Unique Key Created Date Closed Date Agency Agency Name Complaint Type Descriptor Location Type Incident Zip Incident Address ... Bridge Highway Name Bridge Highway Direction Road Ramp Bridge Highway Segment Garage Lot Name Ferry Direction Ferry Terminal Name Latitude Longitude Location
0 31015465 2015-07-06 10:58:27 07/22/2015 01:07:20 AM DCA Department of Consumer Affairs Consumer Complaint Demand for Cash NaN 11360 27-16 203 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.773540 -73.788237 (40.773539552542, -73.78823697228408)
1 30997660 2015-07-03 13:26:29 07/03/2015 02:08:20 PM NYPD New York City Police Department Vending In Prohibited Area Residential Building/House 10019 200 CENTRAL PARK SOUTH ... NaN NaN NaN NaN NaN NaN NaN 40.767021 -73.979448 (40.76702142171206, -73.97944780718524)
2 31950223 2015-11-09 03:55:09 11/09/2015 08:08:57 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 10453 1993 GRAND AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.852671 -73.910608 (40.85267061877697, -73.91060771362552)

3 rows × 53 columns

What was the most popular type of complaint, and how many times was it filed?


In [72]:
df['Complaint Type'].value_counts()
# the most popular type of complaint is blocked driveway, and it was filed 2534 times


Out[72]:
Blocked Driveway                           2534
Illegal Parking                            2410
Noise - Street/Sidewalk                    1584
Street Condition                           1216
Noise - Commercial                         1162
Consumer Complaint                          705
Benefit Card Replacement                    701
Broken Muni Meter                           690
Derelict Vehicle                            538
Noise - Vehicle                             530
Taxi Complaint                              489
Damaged Tree                                420
Overgrown Tree/Branches                     365
Highway Condition                           364
HEAT/HOT WATER                              359
Maintenance or Facility                     333
Food Establishment                          325
Animal Abuse                                292
Graffiti                                    269
SCRIE                                       235
Dead Tree                                   224
Construction                                219
UNSANITARY CONDITION                        204
Indoor Air Quality                          203
Root/Sewer/Sidewalk Condition               189
Sidewalk Condition                          170
Homeless Encampment                         160
Fire Safety Director - F58                  159
PAINT/PLASTER                               147
Traffic                                     145
                                           ... 
DOF Property - Reduction Issue                2
Hazardous Materials                           2
Drinking Water                                2
Boilers                                       2
Open Flame Permit                             2
Missed Collection (All Materials)             2
Beach/Pool/Sauna Complaint                    2
Noise                                         2
Derelict Vehicles                             2
Litter Basket / Request                       2
New Tree Request                              2
Bus Stop Shelter Placement                    2
OUTSIDE BUILDING                              1
Special Projects Inspection Team (SPIT)       1
Public Toilet                                 1
Unsanitary Animal Facility                    1
ELEVATOR                                      1
Highway Sign - Missing                        1
Window Guard                                  1
Other Enforcement                             1
Unsanitary Pigeon Condition                   1
Senior Center Complaint                       1
Municipal Parking Facility                    1
Highway Sign - Dangling                       1
Compliment                                    1
Hazmat Storage/Use                            1
Air Quality                                   1
X-Ray Machine/Equipment                       1
DOF Property - Owner Issue                    1
DOF Parking - Tax Exemption                   1
Name: Complaint Type, dtype: int64

Make a horizontal bar graph of the top 5 most frequent complaint types.


In [75]:
df['Complaint Type'].value_counts().head(5).sort_values().plot(kind='barh')


Out[75]:
<matplotlib.axes._subplots.AxesSubplot at 0x112010fd0>

Which borough has the most complaints per capita? Since it's only 5 boroughs, you can do the math manually.


In [78]:
df['Borough'].value_counts()


Out[78]:
BROOKLYN         5761
QUEENS           5500
MANHATTAN        4491
BRONX            2446
Unspecified       988
STATEN ISLAND     814
Name: Borough, dtype: int64

In [79]:
people_bronx= 1438159
people_queens= 2321580
people_manhattan=1636268
people_brooklyn= 2621793
people_staten_island= 473279

In [80]:
complaints_per_capita_bronx= 29610/people_bronx
complaints_per_capita_bronx


Out[80]:
0.020588822237318682

According to your selection of data, how many cases were filed in March? How about May?


In [38]:
[x for x in list(df['Created Date'].values)]# if np.datetime64(x, 'M') == 3]


Out[38]:
[numpy.datetime64('2015-07-06T10:58:27.000000000'),
 numpy.datetime64('2015-07-03T13:26:29.000000000'),
 numpy.datetime64('2015-11-09T03:55:09.000000000'),
 numpy.datetime64('2015-07-03T02:18:32.000000000'),
 numpy.datetime64('2015-07-04T00:03:27.000000000'),
 numpy.datetime64('2015-07-09T00:00:00.000000000'),
 numpy.datetime64('2015-07-09T12:04:06.000000000'),
 numpy.datetime64('2015-07-09T00:00:00.000000000'),
 numpy.datetime64('2015-08-12T11:09:49.000000000'),
 numpy.datetime64('2015-09-09T21:59:03.000000000'),
 numpy.datetime64('2015-09-09T12:12:46.000000000'),
 numpy.datetime64('2015-09-22T13:50:05.000000000'),
 numpy.datetime64('2015-09-22T13:12:13.000000000'),
 numpy.datetime64('2015-09-22T15:07:51.000000000'),
 numpy.datetime64('2015-04-28T18:26:58.000000000'),
 numpy.datetime64('2015-04-28T17:54:46.000000000'),
 numpy.datetime64('2015-09-13T13:35:02.000000000'),
 numpy.datetime64('2015-09-13T21:04:42.000000000'),
 numpy.datetime64('2015-07-04T16:57:07.000000000'),
 numpy.datetime64('2015-05-21T19:01:52.000000000'),
 numpy.datetime64('2015-07-13T01:14:41.000000000'),
 numpy.datetime64('2015-07-28T10:16:21.000000000'),
 numpy.datetime64('2015-05-21T20:40:35.000000000'),
 numpy.datetime64('2015-05-21T04:43:05.000000000'),
 numpy.datetime64('2015-05-21T18:31:40.000000000'),
 numpy.datetime64('2015-08-31T15:35:00.000000000'),
 numpy.datetime64('2015-09-22T20:51:13.000000000'),
 numpy.datetime64('2015-09-22T10:29:56.000000000'),
 numpy.datetime64('2015-09-03T14:13:35.000000000'),
 numpy.datetime64('2015-09-22T13:06:44.000000000'),
 numpy.datetime64('2015-11-06T06:31:06.000000000'),
 numpy.datetime64('2015-09-22T09:05:40.000000000'),
 numpy.datetime64('2015-06-20T22:51:50.000000000'),
 numpy.datetime64('2015-06-20T22:42:51.000000000'),
 numpy.datetime64('2015-06-20T19:13:54.000000000'),
 numpy.datetime64('2015-06-20T13:11:49.000000000'),
 numpy.datetime64('2015-06-28T10:38:44.000000000'),
 numpy.datetime64('2015-07-01T19:33:00.000000000'),
 numpy.datetime64('2015-06-20T23:00:04.000000000'),
 numpy.datetime64('2015-03-06T18:54:47.000000000'),
 numpy.datetime64('2015-06-28T23:08:47.000000000'),
 numpy.datetime64('2015-07-01T11:56:46.000000000'),
 numpy.datetime64('2015-07-01T22:02:28.000000000'),
 numpy.datetime64('2015-07-01T19:15:45.000000000'),
 numpy.datetime64('2015-09-07T20:47:16.000000000'),
 numpy.datetime64('2015-07-01T11:19:30.000000000'),
 numpy.datetime64('2015-06-29T00:26:39.000000000'),
 numpy.datetime64('2015-09-09T11:53:47.000000000'),
 numpy.datetime64('2015-09-07T21:26:22.000000000'),
 numpy.datetime64('2015-06-28T13:33:13.000000000'),
 numpy.datetime64('2015-09-09T12:40:41.000000000'),
 numpy.datetime64('2015-09-07T15:55:33.000000000'),
 numpy.datetime64('2015-10-19T13:32:45.000000000'),
 numpy.datetime64('2015-07-09T19:17:06.000000000'),
 numpy.datetime64('2015-09-18T09:00:53.000000000'),
 numpy.datetime64('2015-10-19T07:51:41.000000000'),
 numpy.datetime64('2015-07-09T08:24:52.000000000'),
 numpy.datetime64('2015-07-09T13:09:57.000000000'),
 numpy.datetime64('2015-07-21T06:31:38.000000000'),
 numpy.datetime64('2015-09-25T02:57:01.000000000'),
 numpy.datetime64('2015-09-25T09:12:02.000000000'),
 numpy.datetime64('2015-11-04T11:04:54.000000000'),
 numpy.datetime64('2015-09-25T22:33:49.000000000'),
 numpy.datetime64('2015-09-25T02:25:16.000000000'),
 numpy.datetime64('2015-09-25T13:59:50.000000000'),
 numpy.datetime64('2015-11-03T18:27:23.000000000'),
 numpy.datetime64('2015-09-26T01:34:39.000000000'),
 numpy.datetime64('2015-06-15T20:03:12.000000000'),
 numpy.datetime64('2015-06-15T09:51:06.000000000'),
 numpy.datetime64('2015-09-25T23:41:46.000000000'),
 numpy.datetime64('2015-09-25T14:28:56.000000000'),
 numpy.datetime64('2015-06-15T09:40:12.000000000'),
 numpy.datetime64('2015-05-12T13:47:37.000000000'),
 numpy.datetime64('2015-03-28T09:20:24.000000000'),
 numpy.datetime64('2015-05-13T09:10:04.000000000'),
 numpy.datetime64('2015-04-21T20:36:09.000000000'),
 numpy.datetime64('2015-04-21T06:12:36.000000000'),
 numpy.datetime64('2015-04-21T14:25:42.000000000'),
 numpy.datetime64('2015-05-02T14:02:39.000000000'),
 numpy.datetime64('2015-04-08T08:29:07.000000000'),
 numpy.datetime64('2015-04-26T03:29:28.000000000'),
 numpy.datetime64('2015-04-26T20:32:00.000000000'),
 numpy.datetime64('2015-04-26T19:43:47.000000000'),
 numpy.datetime64('2015-09-09T10:37:08.000000000'),
 numpy.datetime64('2015-05-30T09:09:54.000000000'),
 numpy.datetime64('2015-05-30T09:23:27.000000000'),
 numpy.datetime64('2015-05-30T02:43:42.000000000'),
 numpy.datetime64('2015-05-30T23:00:07.000000000'),
 numpy.datetime64('2015-05-30T22:20:44.000000000'),
 numpy.datetime64('2015-05-30T13:10:38.000000000'),
 numpy.datetime64('2015-10-01T07:02:39.000000000'),
 numpy.datetime64('2015-05-30T08:23:56.000000000'),
 numpy.datetime64('2015-07-02T00:09:59.000000000'),
 numpy.datetime64('2015-06-11T16:28:46.000000000'),
 numpy.datetime64('2015-06-28T20:03:46.000000000'),
 numpy.datetime64('2015-06-11T20:23:26.000000000'),
 numpy.datetime64('2015-06-11T07:51:06.000000000'),
 numpy.datetime64('2015-11-05T11:30:56.000000000'),
 numpy.datetime64('2015-06-11T14:38:12.000000000'),
 numpy.datetime64('2015-06-11T13:37:50.000000000'),
 numpy.datetime64('2015-06-11T14:02:20.000000000'),
 numpy.datetime64('2015-10-08T13:12:31.000000000'),
 numpy.datetime64('2015-10-08T22:23:57.000000000'),
 numpy.datetime64('2015-11-09T20:36:31.000000000'),
 numpy.datetime64('2015-05-29T07:15:57.000000000'),
 numpy.datetime64('2015-06-11T13:04:26.000000000'),
 numpy.datetime64('2015-06-11T18:16:09.000000000'),
 numpy.datetime64('2015-06-11T09:09:02.000000000'),
 numpy.datetime64('2015-09-07T02:47:02.000000000'),
 numpy.datetime64('2015-09-07T10:49:19.000000000'),
 numpy.datetime64('2015-09-07T22:18:32.000000000'),
 numpy.datetime64('2015-06-11T16:21:02.000000000'),
 numpy.datetime64('2015-06-11T08:39:40.000000000'),
 numpy.datetime64('2015-06-11T07:30:33.000000000'),
 numpy.datetime64('2015-05-30T23:56:30.000000000'),
 numpy.datetime64('2015-07-23T01:16:22.000000000'),
 numpy.datetime64('2015-07-12T23:12:37.000000000'),
 numpy.datetime64('2015-05-30T18:25:22.000000000'),
 numpy.datetime64('2015-07-12T21:40:03.000000000'),
 numpy.datetime64('2015-09-25T11:44:14.000000000'),
 numpy.datetime64('2015-10-08T13:12:00.000000000'),
 numpy.datetime64('2015-10-08T14:59:51.000000000'),
 numpy.datetime64('2015-09-25T07:21:33.000000000'),
 numpy.datetime64('2015-09-25T11:43:39.000000000'),
 numpy.datetime64('2015-09-25T11:47:57.000000000'),
 numpy.datetime64('2015-09-13T08:58:59.000000000'),
 numpy.datetime64('2015-09-13T17:16:31.000000000'),
 numpy.datetime64('2015-09-13T22:20:37.000000000'),
 numpy.datetime64('2015-09-07T21:44:27.000000000'),
 numpy.datetime64('2015-09-13T15:55:11.000000000'),
 numpy.datetime64('2015-09-13T12:50:17.000000000'),
 numpy.datetime64('2015-09-13T22:08:39.000000000'),
 numpy.datetime64('2015-04-26T23:13:11.000000000'),
 numpy.datetime64('2015-05-04T01:45:15.000000000'),
 numpy.datetime64('2015-04-27T01:00:32.000000000'),
 numpy.datetime64('2015-03-09T15:50:59.000000000'),
 numpy.datetime64('2015-05-12T09:11:43.000000000'),
 numpy.datetime64('2015-06-20T12:43:36.000000000'),
 numpy.datetime64('2015-10-08T10:09:52.000000000'),
 numpy.datetime64('2015-04-22T12:53:47.000000000'),
 numpy.datetime64('2015-04-24T20:35:17.000000000'),
 numpy.datetime64('2015-06-21T00:54:37.000000000'),
 numpy.datetime64('2015-02-19T13:11:07.000000000'),
 numpy.datetime64('2015-02-19T16:37:16.000000000'),
 numpy.datetime64('2015-06-20T22:35:57.000000000'),
 numpy.datetime64('2015-06-20T16:00:26.000000000'),
 numpy.datetime64('2015-06-20T12:37:06.000000000'),
 numpy.datetime64('2015-09-25T19:57:18.000000000'),
 numpy.datetime64('2015-06-20T22:04:25.000000000'),
 numpy.datetime64('2015-09-25T15:29:16.000000000'),
 numpy.datetime64('2015-09-25T14:18:25.000000000'),
 numpy.datetime64('2015-06-21T00:32:05.000000000'),
 numpy.datetime64('2015-09-25T22:28:14.000000000'),
 numpy.datetime64('2015-09-25T12:47:31.000000000'),
 numpy.datetime64('2015-06-21T00:14:55.000000000'),
 numpy.datetime64('2015-06-15T13:49:28.000000000'),
 numpy.datetime64('2015-06-28T23:52:04.000000000'),
 numpy.datetime64('2015-02-23T14:57:13.000000000'),
 numpy.datetime64('2015-07-27T21:08:57.000000000'),
 numpy.datetime64('2015-02-18T19:05:30.000000000'),
 numpy.datetime64('2015-02-18T09:37:39.000000000'),
 numpy.datetime64('2015-06-15T16:37:55.000000000'),
 numpy.datetime64('2015-02-23T23:25:40.000000000'),
 numpy.datetime64('2015-02-23T10:15:42.000000000'),
 numpy.datetime64('2015-06-11T15:59:37.000000000'),
 numpy.datetime64('2015-06-11T08:34:25.000000000'),
 numpy.datetime64('2015-06-11T11:32:41.000000000'),
 numpy.datetime64('2015-07-29T10:13:23.000000000'),
 numpy.datetime64('2015-07-29T20:40:23.000000000'),
 numpy.datetime64('2015-08-06T23:13:26.000000000'),
 numpy.datetime64('2015-07-01T09:09:35.000000000'),
 numpy.datetime64('2015-07-02T15:55:43.000000000'),
 numpy.datetime64('2015-07-02T14:56:43.000000000'),
 numpy.datetime64('2015-07-02T16:02:43.000000000'),
 numpy.datetime64('2015-10-09T09:33:06.000000000'),
 numpy.datetime64('2015-10-10T01:38:21.000000000'),
 numpy.datetime64('2015-10-09T19:20:11.000000000'),
 numpy.datetime64('2015-10-09T12:06:37.000000000'),
 numpy.datetime64('2015-09-02T07:40:35.000000000'),
 numpy.datetime64('2015-09-02T14:12:19.000000000'),
 numpy.datetime64('2015-09-02T09:12:41.000000000'),
 numpy.datetime64('2015-10-09T14:31:46.000000000'),
 numpy.datetime64('2015-10-08T22:23:57.000000000'),
 numpy.datetime64('2015-10-09T21:50:46.000000000'),
 numpy.datetime64('2015-09-03T19:01:13.000000000'),
 numpy.datetime64('2015-09-09T13:29:16.000000000'),
 numpy.datetime64('2015-09-30T10:45:00.000000000'),
 numpy.datetime64('2015-04-02T16:57:06.000000000'),
 numpy.datetime64('2015-07-19T09:27:28.000000000'),
 numpy.datetime64('2015-09-30T10:49:39.000000000'),
 numpy.datetime64('2015-10-19T08:33:37.000000000'),
 numpy.datetime64('2015-01-27T06:20:39.000000000'),
 numpy.datetime64('2015-04-10T23:05:55.000000000'),
 numpy.datetime64('2015-09-25T16:47:45.000000000'),
 numpy.datetime64('2015-10-19T02:11:39.000000000'),
 numpy.datetime64('2015-10-19T21:00:17.000000000'),
 numpy.datetime64('2015-11-05T13:29:07.000000000'),
 numpy.datetime64('2015-09-20T16:27:46.000000000'),
 numpy.datetime64('2015-03-16T17:41:40.000000000'),
 numpy.datetime64('2015-04-24T15:25:36.000000000'),
 numpy.datetime64('2015-04-23T11:18:07.000000000'),
 numpy.datetime64('2015-02-23T03:19:27.000000000'),
 numpy.datetime64('2015-02-23T17:51:32.000000000'),
 numpy.datetime64('2015-02-23T16:46:36.000000000'),
 numpy.datetime64('2015-02-23T12:32:30.000000000'),
 numpy.datetime64('2015-02-23T13:58:31.000000000'),
 numpy.datetime64('2015-02-24T01:39:11.000000000'),
 numpy.datetime64('2015-02-23T12:49:07.000000000'),
 numpy.datetime64('2015-02-24T17:04:39.000000000'),
 numpy.datetime64('2015-08-05T20:19:29.000000000'),
 numpy.datetime64('2015-09-09T09:46:44.000000000'),
 numpy.datetime64('2015-09-09T13:09:56.000000000'),
 numpy.datetime64('2015-06-15T14:10:06.000000000'),
 numpy.datetime64('2015-07-04T07:39:57.000000000'),
 numpy.datetime64('2015-08-05T14:00:17.000000000'),
 numpy.datetime64('2015-08-02T19:10:56.000000000'),
 numpy.datetime64('2015-08-03T00:15:22.000000000'),
 numpy.datetime64('2015-09-22T12:06:45.000000000'),
 numpy.datetime64('2015-09-22T22:50:32.000000000'),
 numpy.datetime64('2015-08-02T23:21:20.000000000'),
 numpy.datetime64('2015-08-02T17:32:51.000000000'),
 numpy.datetime64('2015-08-02T16:40:30.000000000'),
 numpy.datetime64('2015-09-22T15:35:12.000000000'),
 numpy.datetime64('2015-10-09T10:51:06.000000000'),
 numpy.datetime64('2015-10-09T16:31:13.000000000'),
 numpy.datetime64('2015-10-10T01:10:05.000000000'),
 numpy.datetime64('2015-09-25T10:21:36.000000000'),
 numpy.datetime64('2015-09-25T22:42:43.000000000'),
 numpy.datetime64('2015-09-25T22:53:29.000000000'),
 numpy.datetime64('2015-10-09T17:52:08.000000000'),
 numpy.datetime64('2015-11-07T17:28:37.000000000'),
 numpy.datetime64('2015-11-07T22:18:46.000000000'),
 numpy.datetime64('2015-10-26T23:14:16.000000000'),
 numpy.datetime64('2015-07-04T21:56:23.000000000'),
 numpy.datetime64('2015-10-19T22:07:55.000000000'),
 numpy.datetime64('2015-11-06T11:03:50.000000000'),
 numpy.datetime64('2015-09-13T14:00:30.000000000'),
 numpy.datetime64('2015-09-30T12:34:50.000000000'),
 numpy.datetime64('2015-09-13T14:26:05.000000000'),
 numpy.datetime64('2015-10-19T14:03:29.000000000'),
 numpy.datetime64('2015-09-13T10:54:36.000000000'),
 numpy.datetime64('2015-10-19T21:07:58.000000000'),
 numpy.datetime64('2015-09-07T11:06:58.000000000'),
 numpy.datetime64('2015-10-19T03:26:49.000000000'),
 numpy.datetime64('2015-09-08T00:33:41.000000000'),
 numpy.datetime64('2015-09-20T14:59:09.000000000'),
 numpy.datetime64('2015-09-20T18:31:07.000000000'),
 numpy.datetime64('2015-07-04T22:25:41.000000000'),
 numpy.datetime64('2015-09-24T14:43:12.000000000'),
 numpy.datetime64('2015-09-24T16:58:07.000000000'),
 numpy.datetime64('2015-06-21T11:11:00.000000000'),
 numpy.datetime64('2015-09-24T08:18:36.000000000'),
 numpy.datetime64('2015-06-21T20:23:17.000000000'),
 numpy.datetime64('2015-09-27T16:31:58.000000000'),
 numpy.datetime64('2015-09-28T01:38:26.000000000'),
 numpy.datetime64('2015-06-21T06:40:30.000000000'),
 numpy.datetime64('2015-06-21T10:48:34.000000000'),
 numpy.datetime64('2015-02-12T10:58:27.000000000'),
 numpy.datetime64('2015-02-12T14:55:19.000000000'),
 numpy.datetime64('2015-02-12T10:33:31.000000000'),
 numpy.datetime64('2015-09-20T22:29:46.000000000'),
 numpy.datetime64('2015-09-20T09:20:38.000000000'),
 numpy.datetime64('2015-09-20T23:10:15.000000000'),
 numpy.datetime64('2015-02-12T10:12:02.000000000'),
 numpy.datetime64('2015-09-20T02:16:52.000000000'),
 numpy.datetime64('2015-09-20T18:04:34.000000000'),
 numpy.datetime64('2015-02-12T15:49:06.000000000'),
 numpy.datetime64('2015-02-24T19:25:35.000000000'),
 numpy.datetime64('2015-02-25T23:10:21.000000000'),
 numpy.datetime64('2015-08-07T10:27:42.000000000'),
 numpy.datetime64('2015-08-07T19:38:38.000000000'),
 numpy.datetime64('2015-09-20T04:39:28.000000000'),
 numpy.datetime64('2015-09-14T12:54:33.000000000'),
 numpy.datetime64('2015-08-07T13:07:34.000000000'),
 numpy.datetime64('2015-08-10T13:45:55.000000000'),
 numpy.datetime64('2015-11-08T16:23:51.000000000'),
 numpy.datetime64('2015-07-05T01:05:44.000000000'),
 numpy.datetime64('2015-07-03T21:06:57.000000000'),
 numpy.datetime64('2015-09-24T14:04:08.000000000'),
 numpy.datetime64('2015-09-24T16:24:35.000000000'),
 numpy.datetime64('2015-09-22T15:40:27.000000000'),
 numpy.datetime64('2015-09-25T21:11:49.000000000'),
 numpy.datetime64('2015-04-03T00:37:26.000000000'),
 numpy.datetime64('2015-09-25T16:09:28.000000000'),
 numpy.datetime64('2015-10-19T11:12:15.000000000'),
 numpy.datetime64('2015-02-19T15:58:29.000000000'),
 numpy.datetime64('2015-09-25T11:35:18.000000000'),
 numpy.datetime64('2015-11-08T14:57:16.000000000'),
 numpy.datetime64('2015-10-19T06:49:12.000000000'),
 numpy.datetime64('2015-10-19T06:25:15.000000000'),
 numpy.datetime64('2015-10-19T13:44:46.000000000'),
 numpy.datetime64('2015-09-09T21:17:32.000000000'),
 numpy.datetime64('2015-09-09T23:34:02.000000000'),
 numpy.datetime64('2015-08-12T11:31:47.000000000'),
 numpy.datetime64('2015-10-19T23:16:13.000000000'),
 numpy.datetime64('2015-09-20T22:56:10.000000000'),
 numpy.datetime64('2015-04-18T12:55:51.000000000'),
 numpy.datetime64('2015-02-19T11:54:17.000000000'),
 numpy.datetime64('2015-10-10T01:24:53.000000000'),
 numpy.datetime64('2015-02-19T11:32:16.000000000'),
 numpy.datetime64('2015-09-29T13:05:25.000000000'),
 numpy.datetime64('2015-07-03T22:52:37.000000000'),
 numpy.datetime64('2015-07-03T13:43:46.000000000'),
 numpy.datetime64('2015-08-01T08:55:28.000000000'),
 numpy.datetime64('2015-06-21T07:11:35.000000000'),
 numpy.datetime64('2015-08-12T14:30:08.000000000'),
 numpy.datetime64('2015-08-12T16:24:48.000000000'),
 numpy.datetime64('2015-06-21T18:29:03.000000000'),
 numpy.datetime64('2015-06-21T21:40:54.000000000'),
 numpy.datetime64('2015-06-21T22:18:42.000000000'),
 numpy.datetime64('2015-06-06T13:33:20.000000000'),
 numpy.datetime64('2015-05-21T17:28:00.000000000'),
 numpy.datetime64('2015-09-15T17:13:21.000000000'),
 numpy.datetime64('2015-09-15T12:12:55.000000000'),
 numpy.datetime64('2015-09-15T19:27:12.000000000'),
 numpy.datetime64('2015-09-15T07:22:35.000000000'),
 numpy.datetime64('2015-07-03T20:52:06.000000000'),
 numpy.datetime64('2015-07-03T12:58:32.000000000'),
 numpy.datetime64('2015-09-15T18:47:18.000000000'),
 numpy.datetime64('2015-09-15T11:26:58.000000000'),
 numpy.datetime64('2015-07-04T01:25:29.000000000'),
 numpy.datetime64('2015-07-03T21:35:32.000000000'),
 numpy.datetime64('2015-07-03T23:09:16.000000000'),
 numpy.datetime64('2015-07-03T20:11:31.000000000'),
 numpy.datetime64('2015-02-25T14:46:11.000000000'),
 numpy.datetime64('2015-11-28T19:51:34.000000000'),
 numpy.datetime64('2015-09-14T07:53:00.000000000'),
 numpy.datetime64('2015-09-15T10:08:30.000000000'),
 numpy.datetime64('2015-09-14T10:47:07.000000000'),
 numpy.datetime64('2015-02-25T18:14:33.000000000'),
 numpy.datetime64('2015-02-26T02:07:08.000000000'),
 numpy.datetime64('2015-09-25T13:28:53.000000000'),
 numpy.datetime64('2015-09-25T23:21:18.000000000'),
 numpy.datetime64('2015-11-08T13:17:30.000000000'),
 numpy.datetime64('2015-09-25T13:11:50.000000000'),
 numpy.datetime64('2015-09-25T10:29:24.000000000'),
 numpy.datetime64('2015-09-25T13:14:32.000000000'),
 numpy.datetime64('2015-09-25T22:27:00.000000000'),
 numpy.datetime64('2015-10-24T09:49:16.000000000'),
 numpy.datetime64('2015-11-28T12:05:13.000000000'),
 numpy.datetime64('2015-09-13T08:53:43.000000000'),
 numpy.datetime64('2015-11-08T08:03:48.000000000'),
 numpy.datetime64('2015-11-28T11:38:06.000000000'),
 numpy.datetime64('2015-11-08T10:19:12.000000000'),
 numpy.datetime64('2015-09-13T04:48:09.000000000'),
 numpy.datetime64('2015-07-03T22:17:26.000000000'),
 numpy.datetime64('2015-07-03T03:56:33.000000000'),
 numpy.datetime64('2015-07-04T02:16:31.000000000'),
 numpy.datetime64('2015-10-10T15:14:24.000000000'),
 numpy.datetime64('2015-11-28T12:45:49.000000000'),
 numpy.datetime64('2015-09-10T01:35:05.000000000'),
 numpy.datetime64('2015-09-09T15:25:45.000000000'),
 numpy.datetime64('2015-09-13T02:54:14.000000000'),
 numpy.datetime64('2015-09-25T10:13:24.000000000'),
 numpy.datetime64('2015-09-25T06:35:06.000000000'),
 numpy.datetime64('2015-10-09T13:08:15.000000000'),
 numpy.datetime64('2015-11-28T18:46:53.000000000'),
 numpy.datetime64('2015-09-25T23:50:19.000000000'),
 numpy.datetime64('2015-09-14T23:08:19.000000000'),
 numpy.datetime64('2015-10-11T01:39:05.000000000'),
 numpy.datetime64('2015-10-10T16:36:41.000000000'),
 numpy.datetime64('2015-09-14T17:16:05.000000000'),
 numpy.datetime64('2015-07-03T11:09:17.000000000'),
 numpy.datetime64('2015-04-18T04:03:10.000000000'),
 numpy.datetime64('2015-04-15T10:45:50.000000000'),
 numpy.datetime64('2015-07-27T09:26:06.000000000'),
 numpy.datetime64('2015-09-20T02:37:34.000000000'),
 numpy.datetime64('2015-09-20T16:10:16.000000000'),
 numpy.datetime64('2015-09-20T08:11:18.000000000'),
 numpy.datetime64('2015-09-20T19:35:57.000000000'),
 numpy.datetime64('2015-10-11T01:43:01.000000000'),
 numpy.datetime64('2015-06-08T06:24:06.000000000'),
 numpy.datetime64('2015-10-09T18:18:28.000000000'),
 numpy.datetime64('2015-09-20T19:40:07.000000000'),
 numpy.datetime64('2015-09-25T12:52:40.000000000'),
 numpy.datetime64('2015-10-09T21:12:38.000000000'),
 numpy.datetime64('2015-10-09T14:41:16.000000000'),
 numpy.datetime64('2015-09-22T10:59:39.000000000'),
 numpy.datetime64('2015-09-22T19:31:45.000000000'),
 numpy.datetime64('2015-09-22T18:42:16.000000000'),
 numpy.datetime64('2015-02-25T15:57:19.000000000'),
 numpy.datetime64('2015-02-25T13:36:11.000000000'),
 numpy.datetime64('2015-09-22T14:37:16.000000000'),
 numpy.datetime64('2015-09-25T05:27:30.000000000'),
 numpy.datetime64('2015-11-03T18:56:00.000000000'),
 numpy.datetime64('2015-10-22T13:46:42.000000000'),
 numpy.datetime64('2015-09-14T19:13:14.000000000'),
 numpy.datetime64('2015-09-25T13:28:18.000000000'),
 numpy.datetime64('2015-09-14T14:33:45.000000000'),
 numpy.datetime64('2015-09-15T12:42:57.000000000'),
 numpy.datetime64('2015-07-25T09:33:55.000000000'),
 numpy.datetime64('2015-07-25T07:53:31.000000000'),
 numpy.datetime64('2015-07-25T19:42:25.000000000'),
 numpy.datetime64('2015-07-27T11:39:45.000000000'),
 numpy.datetime64('2015-09-15T14:10:14.000000000'),
 numpy.datetime64('2015-07-27T16:41:07.000000000'),
 numpy.datetime64('2015-07-27T14:55:59.000000000'),
 numpy.datetime64('2015-09-15T22:21:13.000000000'),
 numpy.datetime64('2015-09-14T13:47:10.000000000'),
 numpy.datetime64('2015-07-29T14:32:03.000000000'),
 numpy.datetime64('2015-09-15T09:09:33.000000000'),
 numpy.datetime64('2015-09-15T11:16:47.000000000'),
 numpy.datetime64('2015-05-04T18:41:17.000000000'),
 numpy.datetime64('2015-02-11T12:39:41.000000000'),
 numpy.datetime64('2015-05-04T12:48:20.000000000'),
 numpy.datetime64('2015-05-04T21:55:20.000000000'),
 numpy.datetime64('2015-05-04T08:42:37.000000000'),
 numpy.datetime64('2015-02-21T14:22:16.000000000'),
 numpy.datetime64('2015-02-04T13:53:54.000000000'),
 numpy.datetime64('2015-02-11T11:28:19.000000000'),
 numpy.datetime64('2015-02-21T23:28:31.000000000'),
 numpy.datetime64('2015-09-25T13:01:37.000000000'),
 numpy.datetime64('2015-09-25T23:27:30.000000000'),
 numpy.datetime64('2015-05-29T09:06:51.000000000'),
 numpy.datetime64('2015-02-26T10:00:22.000000000'),
 numpy.datetime64('2015-03-01T12:43:32.000000000'),
 numpy.datetime64('2015-03-03T12:23:58.000000000'),
 numpy.datetime64('2015-02-07T15:05:00.000000000'),
 numpy.datetime64('2015-02-07T02:22:55.000000000'),
 numpy.datetime64('2015-09-26T02:09:45.000000000'),
 numpy.datetime64('2015-09-13T09:45:33.000000000'),
 numpy.datetime64('2015-09-20T15:22:27.000000000'),
 numpy.datetime64('2015-09-20T23:21:48.000000000'),
 numpy.datetime64('2015-11-28T02:38:15.000000000'),
 numpy.datetime64('2015-09-20T16:14:32.000000000'),
 numpy.datetime64('2015-09-20T14:03:46.000000000'),
 numpy.datetime64('2015-11-06T12:28:30.000000000'),
 numpy.datetime64('2015-09-14T20:31:37.000000000'),
 numpy.datetime64('2015-09-15T14:26:16.000000000'),
 numpy.datetime64('2015-08-06T08:05:09.000000000'),
 numpy.datetime64('2015-08-06T16:46:47.000000000'),
 numpy.datetime64('2015-09-15T20:31:02.000000000'),
 numpy.datetime64('2015-09-15T09:38:38.000000000'),
 numpy.datetime64('2015-08-06T13:34:34.000000000'),
 numpy.datetime64('2015-08-06T10:15:20.000000000'),
 numpy.datetime64('2015-09-15T11:02:22.000000000'),
 numpy.datetime64('2015-05-10T16:57:44.000000000'),
 numpy.datetime64('2015-05-29T13:50:51.000000000'),
 numpy.datetime64('2015-09-15T23:07:50.000000000'),
 numpy.datetime64('2015-09-25T22:35:24.000000000'),
 numpy.datetime64('2015-09-26T02:08:39.000000000'),
 numpy.datetime64('2015-02-19T20:31:07.000000000'),
 numpy.datetime64('2015-09-26T00:48:28.000000000'),
 numpy.datetime64('2015-09-26T12:54:56.000000000'),
 numpy.datetime64('2015-09-26T14:19:16.000000000'),
 numpy.datetime64('2015-09-27T00:40:17.000000000'),
 numpy.datetime64('2015-09-15T22:18:45.000000000'),
 numpy.datetime64('2015-10-16T09:20:10.000000000'),
 numpy.datetime64('2015-09-15T22:25:50.000000000'),
 numpy.datetime64('2015-09-15T22:19:09.000000000'),
 numpy.datetime64('2015-09-07T11:16:40.000000000'),
 numpy.datetime64('2015-09-07T11:59:30.000000000'),
 numpy.datetime64('2015-11-05T14:28:24.000000000'),
 numpy.datetime64('2015-09-07T09:10:27.000000000'),
 numpy.datetime64('2015-09-07T22:17:41.000000000'),
 numpy.datetime64('2015-02-07T10:48:10.000000000'),
 numpy.datetime64('2015-03-02T17:04:18.000000000'),
 numpy.datetime64('2015-02-04T09:43:46.000000000'),
 numpy.datetime64('2015-09-20T13:41:07.000000000'),
 numpy.datetime64('2015-09-20T03:52:33.000000000'),
 numpy.datetime64('2015-09-25T15:19:10.000000000'),
 numpy.datetime64('2015-02-19T08:56:37.000000000'),
 numpy.datetime64('2015-09-25T06:16:49.000000000'),
 numpy.datetime64('2015-09-25T11:11:12.000000000'),
 numpy.datetime64('2015-05-29T07:42:26.000000000'),
 numpy.datetime64('2015-05-29T11:29:06.000000000'),
 numpy.datetime64('2015-09-25T20:07:15.000000000'),
 numpy.datetime64('2015-09-15T13:03:44.000000000'),
 numpy.datetime64('2015-03-03T20:22:17.000000000'),
 numpy.datetime64('2015-03-03T07:43:10.000000000'),
 numpy.datetime64('2015-10-16T23:33:20.000000000'),
 numpy.datetime64('2015-09-25T21:38:05.000000000'),
 numpy.datetime64('2015-09-13T19:14:34.000000000'),
 numpy.datetime64('2015-10-01T12:48:30.000000000'),
 numpy.datetime64('2015-10-16T04:57:22.000000000'),
 numpy.datetime64('2015-10-16T16:22:57.000000000'),
 numpy.datetime64('2015-03-03T07:39:42.000000000'),
 numpy.datetime64('2015-02-08T14:21:38.000000000'),
 numpy.datetime64('2015-11-09T13:31:54.000000000'),
 numpy.datetime64('2015-09-26T00:24:24.000000000'),
 numpy.datetime64('2015-10-16T16:39:34.000000000'),
 numpy.datetime64('2015-09-25T11:11:09.000000000'),
 numpy.datetime64('2015-02-10T14:36:50.000000000'),
 numpy.datetime64('2015-02-10T09:34:31.000000000'),
 numpy.datetime64('2015-02-10T19:46:16.000000000'),
 numpy.datetime64('2015-09-25T08:46:19.000000000'),
 numpy.datetime64('2015-05-11T16:40:48.000000000'),
 numpy.datetime64('2015-05-11T22:11:46.000000000'),
 numpy.datetime64('2015-02-19T20:48:34.000000000'),
 numpy.datetime64('2015-09-20T06:00:50.000000000'),
 numpy.datetime64('2015-09-20T21:36:37.000000000'),
 numpy.datetime64('2015-05-11T19:10:00.000000000'),
 numpy.datetime64('2015-09-21T02:13:02.000000000'),
 numpy.datetime64('2015-09-25T15:47:51.000000000'),
 numpy.datetime64('2015-09-25T17:24:24.000000000'),
 numpy.datetime64('2015-09-14T13:26:41.000000000'),
 numpy.datetime64('2015-09-14T10:57:13.000000000'),
 numpy.datetime64('2015-09-15T09:21:20.000000000'),
 numpy.datetime64('2015-11-28T08:13:02.000000000'),
 numpy.datetime64('2015-09-15T22:26:44.000000000'),
 numpy.datetime64('2015-09-15T15:31:11.000000000'),
 numpy.datetime64('2015-09-15T14:35:48.000000000'),
 numpy.datetime64('2015-07-23T00:25:40.000000000'),
 numpy.datetime64('2015-09-25T09:03:04.000000000'),
 numpy.datetime64('2015-11-28T12:03:41.000000000'),
 numpy.datetime64('2015-09-25T07:58:28.000000000'),
 numpy.datetime64('2015-09-25T17:06:27.000000000'),
 numpy.datetime64('2015-09-25T13:34:56.000000000'),
 numpy.datetime64('2015-10-11T01:26:47.000000000'),
 numpy.datetime64('2015-09-25T09:33:55.000000000'),
 numpy.datetime64('2015-09-25T13:34:15.000000000'),
 numpy.datetime64('2015-07-01T19:48:11.000000000'),
 numpy.datetime64('2015-10-09T14:03:22.000000000'),
 numpy.datetime64('2015-09-25T10:00:11.000000000'),
 numpy.datetime64('2015-09-25T14:47:09.000000000'),
 numpy.datetime64('2015-10-09T11:50:30.000000000'),
 numpy.datetime64('2015-03-03T15:05:13.000000000'),
 numpy.datetime64('2015-03-03T10:49:03.000000000'),
 numpy.datetime64('2015-03-03T16:46:09.000000000'),
 numpy.datetime64('2015-03-03T16:09:05.000000000'),
 numpy.datetime64('2015-03-03T17:30:23.000000000'),
 numpy.datetime64('2015-03-03T11:52:55.000000000'),
 numpy.datetime64('2015-03-03T11:36:44.000000000'),
 numpy.datetime64('2015-03-01T22:55:58.000000000'),
 numpy.datetime64('2015-03-01T12:40:10.000000000'),
 numpy.datetime64('2015-03-01T14:20:24.000000000'),
 numpy.datetime64('2015-05-11T12:45:14.000000000'),
 numpy.datetime64('2015-05-08T15:12:09.000000000'),
 numpy.datetime64('2015-09-20T21:08:21.000000000'),
 numpy.datetime64('2015-05-30T01:54:01.000000000'),
 numpy.datetime64('2015-11-08T20:09:10.000000000'),
 numpy.datetime64('2015-05-07T19:10:49.000000000'),
 numpy.datetime64('2015-05-08T01:25:10.000000000'),
 numpy.datetime64('2015-05-08T19:52:24.000000000'),
 numpy.datetime64('2015-09-13T12:54:48.000000000'),
 numpy.datetime64('2015-09-13T14:35:25.000000000'),
 numpy.datetime64('2015-09-20T20:06:05.000000000'),
 numpy.datetime64('2015-09-20T11:26:38.000000000'),
 numpy.datetime64('2015-09-20T14:05:41.000000000'),
 numpy.datetime64('2015-09-07T19:43:39.000000000'),
 numpy.datetime64('2015-09-07T22:40:16.000000000'),
 numpy.datetime64('2015-11-28T17:55:52.000000000'),
 numpy.datetime64('2015-11-08T17:42:32.000000000'),
 numpy.datetime64('2015-09-25T08:02:49.000000000'),
 numpy.datetime64('2015-09-25T15:10:14.000000000'),
 numpy.datetime64('2015-10-16T13:27:02.000000000'),
 numpy.datetime64('2015-10-16T07:17:17.000000000'),
 numpy.datetime64('2015-10-16T10:28:27.000000000'),
 numpy.datetime64('2015-11-08T10:57:20.000000000'),
 numpy.datetime64('2015-06-23T11:38:33.000000000'),
 numpy.datetime64('2015-09-14T11:31:49.000000000'),
 numpy.datetime64('2015-09-14T21:07:08.000000000'),
 numpy.datetime64('2015-11-02T15:56:20.000000000'),
 numpy.datetime64('2015-10-10T22:34:29.000000000'),
 numpy.datetime64('2015-09-15T12:49:34.000000000'),
 numpy.datetime64('2015-09-15T13:41:32.000000000'),
 numpy.datetime64('2015-09-15T11:17:43.000000000'),
 numpy.datetime64('2015-11-28T10:01:53.000000000'),
 numpy.datetime64('2015-10-23T01:21:56.000000000'),
 numpy.datetime64('2015-06-25T12:00:18.000000000'),
 numpy.datetime64('2015-11-08T00:39:16.000000000'),
 numpy.datetime64('2015-03-01T12:08:36.000000000'),
 numpy.datetime64('2015-03-01T21:35:05.000000000'),
 numpy.datetime64('2015-03-01T22:59:15.000000000'),
 numpy.datetime64('2015-02-07T14:08:47.000000000'),
 numpy.datetime64('2015-02-07T22:40:57.000000000'),
 numpy.datetime64('2015-02-07T15:00:09.000000000'),
 numpy.datetime64('2015-09-14T23:33:26.000000000'),
 numpy.datetime64('2015-02-17T12:29:45.000000000'),
 numpy.datetime64('2015-02-26T12:36:17.000000000'),
 numpy.datetime64('2015-02-26T23:39:30.000000000'),
 numpy.datetime64('2015-09-14T23:26:39.000000000'),
 numpy.datetime64('2015-02-17T14:54:43.000000000'),
 numpy.datetime64('2015-02-17T13:44:44.000000000'),
 numpy.datetime64('2015-09-14T07:07:00.000000000'),
 numpy.datetime64('2015-09-14T22:06:28.000000000'),
 numpy.datetime64('2015-09-15T20:13:16.000000000'),
 numpy.datetime64('2015-05-15T10:48:15.000000000'),
 numpy.datetime64('2015-05-15T11:32:45.000000000'),
 numpy.datetime64('2015-05-15T10:30:29.000000000'),
 numpy.datetime64('2015-05-15T10:59:16.000000000'),
 numpy.datetime64('2015-09-25T14:43:56.000000000'),
 numpy.datetime64('2015-05-15T11:08:29.000000000'),
 numpy.datetime64('2015-05-21T15:36:03.000000000'),
 numpy.datetime64('2015-05-21T11:18:00.000000000'),
 numpy.datetime64('2015-07-29T16:31:54.000000000'),
 numpy.datetime64('2015-11-04T21:13:25.000000000'),
 numpy.datetime64('2015-06-25T10:29:10.000000000'),
 numpy.datetime64('2015-10-03T11:47:05.000000000'),
 numpy.datetime64('2015-11-03T20:51:42.000000000'),
 numpy.datetime64('2015-07-29T23:34:43.000000000'),
 numpy.datetime64('2015-09-15T22:10:37.000000000'),
 numpy.datetime64('2015-08-03T14:58:26.000000000'),
 numpy.datetime64('2015-08-03T13:45:12.000000000'),
 numpy.datetime64('2015-08-03T02:48:10.000000000'),
 numpy.datetime64('2015-11-04T20:39:56.000000000'),
 numpy.datetime64('2015-09-15T12:07:30.000000000'),
 numpy.datetime64('2015-09-15T10:16:45.000000000'),
 numpy.datetime64('2015-07-29T11:09:49.000000000'),
 numpy.datetime64('2015-08-04T01:57:13.000000000'),
 numpy.datetime64('2015-08-03T07:24:11.000000000'),
 numpy.datetime64('2015-08-12T15:21:27.000000000'),
 numpy.datetime64('2015-08-06T22:16:34.000000000'),
 numpy.datetime64('2015-08-12T11:14:12.000000000'),
 numpy.datetime64('2015-08-12T07:55:56.000000000'),
 numpy.datetime64('2015-08-06T19:48:00.000000000'),
 numpy.datetime64('2015-08-06T17:36:32.000000000'),
 numpy.datetime64('2015-09-23T17:25:32.000000000'),
 numpy.datetime64('2015-10-16T15:59:21.000000000'),
 numpy.datetime64('2015-09-15T21:20:03.000000000'),
 numpy.datetime64('2015-06-25T12:29:21.000000000'),
 numpy.datetime64('2015-11-08T13:55:41.000000000'),
 numpy.datetime64('2015-09-15T08:22:59.000000000'),
 numpy.datetime64('2015-06-23T15:07:30.000000000'),
 numpy.datetime64('2015-09-15T22:08:41.000000000'),
 numpy.datetime64('2015-06-13T16:37:53.000000000'),
 numpy.datetime64('2015-06-13T04:33:24.000000000'),
 numpy.datetime64('2015-06-13T14:52:24.000000000'),
 numpy.datetime64('2015-09-15T18:02:44.000000000'),
 numpy.datetime64('2015-09-15T19:34:19.000000000'),
 numpy.datetime64('2015-09-25T17:23:38.000000000'),
 numpy.datetime64('2015-11-28T03:58:58.000000000'),
 numpy.datetime64('2015-11-09T07:42:27.000000000'),
 numpy.datetime64('2015-09-26T01:11:56.000000000'),
 numpy.datetime64('2015-02-17T11:55:08.000000000'),
 numpy.datetime64('2015-09-25T07:06:42.000000000'),
 numpy.datetime64('2015-09-25T15:11:55.000000000'),
 numpy.datetime64('2015-10-16T23:54:38.000000000'),
 numpy.datetime64('2015-11-08T10:22:24.000000000'),
 numpy.datetime64('2015-02-17T13:23:58.000000000'),
 numpy.datetime64('2015-09-26T17:17:34.000000000'),
 numpy.datetime64('2015-02-17T23:06:02.000000000'),
 numpy.datetime64('2015-02-04T09:33:38.000000000'),
 numpy.datetime64('2015-09-26T16:35:15.000000000'),
 numpy.datetime64('2015-09-26T14:30:09.000000000'),
 numpy.datetime64('2015-02-04T15:45:36.000000000'),
 numpy.datetime64('2015-09-26T15:01:02.000000000'),
 numpy.datetime64('2015-09-26T20:30:32.000000000'),
 numpy.datetime64('2015-02-04T14:10:55.000000000'),
 numpy.datetime64('2015-11-03T11:56:07.000000000'),
 numpy.datetime64('2015-02-15T00:55:30.000000000'),
 numpy.datetime64('2015-06-24T00:00:00.000000000'),
 numpy.datetime64('2015-07-18T08:19:47.000000000'),
 numpy.datetime64('2015-07-23T11:08:19.000000000'),
 numpy.datetime64('2015-06-25T14:39:54.000000000'),
 numpy.datetime64('2015-06-25T20:21:46.000000000'),
 numpy.datetime64('2015-06-25T23:29:26.000000000'),
 numpy.datetime64('2015-06-25T23:39:48.000000000'),
 numpy.datetime64('2015-06-24T18:41:00.000000000'),
 numpy.datetime64('2015-06-24T15:24:39.000000000'),
 numpy.datetime64('2015-06-24T22:36:01.000000000'),
 numpy.datetime64('2015-04-28T08:02:28.000000000'),
 numpy.datetime64('2015-05-23T14:37:09.000000000'),
 numpy.datetime64('2015-08-06T11:43:41.000000000'),
 numpy.datetime64('2015-08-06T14:08:01.000000000'),
 numpy.datetime64('2015-08-07T02:16:40.000000000'),
 numpy.datetime64('2015-08-08T00:52:03.000000000'),
 numpy.datetime64('2015-08-07T22:45:41.000000000'),
 numpy.datetime64('2015-08-07T15:42:05.000000000'),
 numpy.datetime64('2015-08-07T16:31:50.000000000'),
 numpy.datetime64('2015-08-07T11:45:27.000000000'),
 numpy.datetime64('2015-08-02T16:19:13.000000000'),
 numpy.datetime64('2015-06-23T13:18:16.000000000'),
 numpy.datetime64('2015-06-26T17:41:27.000000000'),
 numpy.datetime64('2015-06-26T04:47:22.000000000'),
 numpy.datetime64('2015-09-25T10:44:55.000000000'),
 numpy.datetime64('2015-09-25T22:57:09.000000000'),
 numpy.datetime64('2015-06-24T09:36:45.000000000'),
 numpy.datetime64('2015-06-26T22:55:40.000000000'),
 numpy.datetime64('2015-06-26T18:17:45.000000000'),
 numpy.datetime64('2015-12-21T20:20:17.000000000'),
 numpy.datetime64('2015-09-25T22:59:04.000000000'),
 numpy.datetime64('2015-09-26T00:01:38.000000000'),
 numpy.datetime64('2015-09-26T00:44:10.000000000'),
 numpy.datetime64('2015-09-25T10:24:49.000000000'),
 numpy.datetime64('2015-09-26T01:37:37.000000000'),
 numpy.datetime64('2015-09-26T01:16:01.000000000'),
 numpy.datetime64('2015-09-25T13:31:02.000000000'),
 numpy.datetime64('2015-09-26T13:36:56.000000000'),
 numpy.datetime64('2015-09-25T00:44:56.000000000'),
 numpy.datetime64('2015-06-24T19:02:15.000000000'),
 numpy.datetime64('2015-07-20T23:52:43.000000000'),
 numpy.datetime64('2015-10-20T06:53:23.000000000'),
 numpy.datetime64('2015-06-24T17:52:01.000000000'),
 numpy.datetime64('2015-06-09T12:59:09.000000000'),
 numpy.datetime64('2015-06-09T03:49:51.000000000'),
 numpy.datetime64('2015-06-09T07:57:03.000000000'),
 numpy.datetime64('2015-11-08T10:10:44.000000000'),
 numpy.datetime64('2015-06-09T12:36:30.000000000'),
 numpy.datetime64('2015-05-02T11:06:06.000000000'),
 numpy.datetime64('2015-09-18T21:30:09.000000000'),
 numpy.datetime64('2015-02-17T11:13:07.000000000'),
 numpy.datetime64('2015-02-17T09:36:24.000000000'),
 numpy.datetime64('2015-02-04T09:02:04.000000000'),
 numpy.datetime64('2015-06-24T21:47:27.000000000'),
 numpy.datetime64('2015-06-24T14:45:17.000000000'),
 numpy.datetime64('2015-06-25T18:21:49.000000000'),
 numpy.datetime64('2015-06-25T20:09:56.000000000'),
 numpy.datetime64('2015-06-25T21:35:56.000000000'),
 numpy.datetime64('2015-06-04T18:01:46.000000000'),
 numpy.datetime64('2015-04-26T22:52:26.000000000'),
 numpy.datetime64('2015-05-12T18:25:29.000000000'),
 numpy.datetime64('2015-05-12T20:48:44.000000000'),
 numpy.datetime64('2015-05-13T08:39:06.000000000'),
 numpy.datetime64('2015-04-22T15:24:35.000000000'),
 numpy.datetime64('2015-09-25T08:35:47.000000000'),
 numpy.datetime64('2015-09-08T14:38:05.000000000'),
 numpy.datetime64('2015-09-23T09:04:04.000000000'),
 numpy.datetime64('2015-10-02T15:51:54.000000000'),
 numpy.datetime64('2015-10-21T15:01:17.000000000'),
 numpy.datetime64('2015-11-06T11:29:36.000000000'),
 numpy.datetime64('2015-06-24T13:42:09.000000000'),
 numpy.datetime64('2015-06-25T00:10:52.000000000'),
 numpy.datetime64('2015-06-24T11:12:51.000000000'),
 numpy.datetime64('2015-06-24T08:23:01.000000000'),
 numpy.datetime64('2015-11-28T14:49:54.000000000'),
 numpy.datetime64('2015-10-20T12:59:04.000000000'),
 numpy.datetime64('2015-10-20T08:33:56.000000000'),
 numpy.datetime64('2015-09-25T14:23:03.000000000'),
 numpy.datetime64('2015-02-18T23:46:00.000000000'),
 numpy.datetime64('2015-02-18T16:23:05.000000000'),
 numpy.datetime64('2015-11-06T20:44:09.000000000'),
 numpy.datetime64('2015-09-25T16:55:09.000000000'),
 numpy.datetime64('2015-02-19T15:55:37.000000000'),
 numpy.datetime64('2015-02-19T14:23:56.000000000'),
 numpy.datetime64('2015-10-22T12:18:40.000000000'),
 numpy.datetime64('2015-10-03T17:09:01.000000000'),
 numpy.datetime64('2015-10-24T10:42:09.000000000'),
 numpy.datetime64('2015-11-08T16:00:40.000000000'),
 numpy.datetime64('2015-12-21T00:00:00.000000000'),
 numpy.datetime64('2015-04-22T13:47:07.000000000'),
 numpy.datetime64('2015-04-22T22:20:34.000000000'),
 numpy.datetime64('2015-04-22T13:20:34.000000000'),
 numpy.datetime64('2015-06-24T11:25:31.000000000'),
 numpy.datetime64('2015-04-27T15:07:14.000000000'),
 numpy.datetime64('2015-03-14T00:45:06.000000000'),
 numpy.datetime64('2015-10-20T03:35:57.000000000'),
 numpy.datetime64('2015-10-20T22:09:55.000000000'),
 numpy.datetime64('2015-01-03T07:33:34.000000000'),
 numpy.datetime64('2015-09-23T13:33:40.000000000'),
 numpy.datetime64('2015-12-26T20:39:15.000000000'),
 numpy.datetime64('2015-12-21T11:08:08.000000000'),
 numpy.datetime64('2015-02-11T10:07:05.000000000'),
 numpy.datetime64('2015-02-11T13:26:05.000000000'),
 numpy.datetime64('2015-02-11T18:16:20.000000000'),
 numpy.datetime64('2015-10-20T23:06:49.000000000'),
 numpy.datetime64('2015-09-25T06:57:12.000000000'),
 numpy.datetime64('2015-02-11T07:34:36.000000000'),
 numpy.datetime64('2015-02-11T08:57:15.000000000'),
 numpy.datetime64('2015-11-04T15:58:22.000000000'),
 numpy.datetime64('2015-02-19T10:46:01.000000000'),
 numpy.datetime64('2015-02-19T10:28:42.000000000'),
 numpy.datetime64('2015-02-21T12:06:02.000000000'),
 numpy.datetime64('2015-10-20T15:01:38.000000000'),
 numpy.datetime64('2015-04-24T11:42:53.000000000'),
 numpy.datetime64('2015-04-27T16:55:10.000000000'),
 numpy.datetime64('2015-04-27T12:19:44.000000000'),
 numpy.datetime64('2015-04-27T15:53:17.000000000'),
 numpy.datetime64('2015-08-12T16:35:34.000000000'),
 numpy.datetime64('2015-09-25T14:57:08.000000000'),
 numpy.datetime64('2015-06-09T15:22:44.000000000'),
 numpy.datetime64('2015-09-01T14:03:41.000000000'),
 numpy.datetime64('2015-04-23T09:20:04.000000000'),
 numpy.datetime64('2015-04-23T11:07:03.000000000'),
 numpy.datetime64('2015-04-23T18:41:34.000000000'),
 numpy.datetime64('2015-04-23T13:54:21.000000000'),
 numpy.datetime64('2015-04-23T13:43:01.000000000'),
 numpy.datetime64('2015-11-09T10:30:47.000000000'),
 numpy.datetime64('2015-05-10T17:23:47.000000000'),
 numpy.datetime64('2015-11-08T16:40:19.000000000'),
 numpy.datetime64('2015-10-03T12:25:21.000000000'),
 numpy.datetime64('2015-10-02T15:00:36.000000000'),
 numpy.datetime64('2015-09-19T00:33:37.000000000'),
 numpy.datetime64('2015-09-18T10:54:05.000000000'),
 numpy.datetime64('2015-06-09T17:50:51.000000000'),
 numpy.datetime64('2015-06-09T12:44:22.000000000'),
 numpy.datetime64('2015-06-09T18:16:58.000000000'),
 numpy.datetime64('2015-06-09T14:00:39.000000000'),
 numpy.datetime64('2015-07-22T15:18:47.000000000'),
 numpy.datetime64('2015-07-22T21:38:07.000000000'),
 numpy.datetime64('2015-07-22T11:36:20.000000000'),
 numpy.datetime64('2015-07-25T23:27:58.000000000'),
 numpy.datetime64('2015-07-25T23:03:50.000000000'),
 numpy.datetime64('2015-07-25T21:19:04.000000000'),
 numpy.datetime64('2015-07-27T12:38:34.000000000'),
 numpy.datetime64('2015-10-19T12:05:54.000000000'),
 numpy.datetime64('2015-11-04T15:05:25.000000000'),
 numpy.datetime64('2015-05-10T23:29:47.000000000'),
 numpy.datetime64('2015-05-10T16:53:38.000000000'),
 numpy.datetime64('2015-05-04T14:42:57.000000000'),
 numpy.datetime64('2015-05-04T04:31:42.000000000'),
 numpy.datetime64('2015-05-04T07:45:39.000000000'),
 numpy.datetime64('2015-05-04T17:58:19.000000000'),
 numpy.datetime64('2015-09-11T11:53:51.000000000'),
 numpy.datetime64('2015-06-09T23:18:33.000000000'),
 numpy.datetime64('2015-05-04T07:25:30.000000000'),
 numpy.datetime64('2015-09-11T14:32:46.000000000'),
 numpy.datetime64('2015-05-04T19:28:32.000000000'),
 numpy.datetime64('2015-06-28T09:31:21.000000000'),
 numpy.datetime64('2015-06-28T04:08:59.000000000'),
 numpy.datetime64('2015-06-28T10:08:58.000000000'),
 numpy.datetime64('2015-06-28T04:46:31.000000000'),
 numpy.datetime64('2015-07-01T12:03:47.000000000'),
 numpy.datetime64('2015-09-18T10:10:09.000000000'),
 numpy.datetime64('2015-10-04T15:39:08.000000000'),
 numpy.datetime64('2015-10-04T12:32:14.000000000'),
 numpy.datetime64('2015-10-04T03:28:43.000000000'),
 numpy.datetime64('2015-07-28T08:32:45.000000000'),
 numpy.datetime64('2015-07-28T14:35:24.000000000'),
 numpy.datetime64('2015-07-28T20:51:06.000000000'),
 numpy.datetime64('2015-07-29T15:45:00.000000000'),
 numpy.datetime64('2015-09-21T13:53:41.000000000'),
 numpy.datetime64('2015-07-29T11:13:22.000000000'),
 numpy.datetime64('2015-09-25T22:24:21.000000000'),
 numpy.datetime64('2015-09-13T04:08:52.000000000'),
 numpy.datetime64('2015-09-14T01:19:39.000000000'),
 numpy.datetime64('2015-09-13T16:31:09.000000000'),
 numpy.datetime64('2015-09-05T15:41:13.000000000'),
 numpy.datetime64('2015-09-05T15:16:02.000000000'),
 numpy.datetime64('2015-09-05T09:06:13.000000000'),
 numpy.datetime64('2015-06-09T14:41:51.000000000'),
 numpy.datetime64('2015-10-03T13:57:56.000000000'),
 numpy.datetime64('2015-05-11T01:12:28.000000000'),
 numpy.datetime64('2015-07-01T21:09:29.000000000'),
 numpy.datetime64('2015-10-03T10:58:56.000000000'),
 numpy.datetime64('2015-07-01T19:12:29.000000000'),
 numpy.datetime64('2015-07-01T12:28:30.000000000'),
 numpy.datetime64('2015-02-11T13:29:30.000000000'),
 numpy.datetime64('2015-07-01T17:00:10.000000000'),
 numpy.datetime64('2015-07-01T19:29:00.000000000'),
 numpy.datetime64('2015-06-11T11:27:39.000000000'),
 numpy.datetime64('2015-06-11T12:00:27.000000000'),
 numpy.datetime64('2015-06-11T21:10:27.000000000'),
 numpy.datetime64('2015-06-11T20:54:11.000000000'),
 numpy.datetime64('2015-07-02T16:02:32.000000000'),
 numpy.datetime64('2015-09-22T01:29:17.000000000'),
 numpy.datetime64('2015-08-04T13:39:48.000000000'),
 numpy.datetime64('2015-08-04T11:08:56.000000000'),
 numpy.datetime64('2015-08-04T15:06:32.000000000'),
 numpy.datetime64('2015-10-03T20:06:03.000000000'),
 numpy.datetime64('2015-08-07T00:02:26.000000000'),
 numpy.datetime64('2015-08-06T19:10:10.000000000'),
 numpy.datetime64('2015-08-06T12:26:13.000000000'),
 numpy.datetime64('2015-09-07T18:15:36.000000000'),
 numpy.datetime64('2015-09-07T02:56:16.000000000'),
 numpy.datetime64('2015-10-17T20:59:04.000000000'),
 numpy.datetime64('2015-08-06T15:18:29.000000000'),
 numpy.datetime64('2015-08-03T00:21:17.000000000'),
 numpy.datetime64('2015-09-07T13:51:46.000000000'),
 numpy.datetime64('2015-09-07T02:29:40.000000000'),
 numpy.datetime64('2015-08-02T03:07:06.000000000'),
 numpy.datetime64('2015-09-20T04:35:59.000000000'),
 numpy.datetime64('2015-06-25T10:13:35.000000000'),
 numpy.datetime64('2015-09-20T15:12:05.000000000'),
 numpy.datetime64('2015-09-20T11:53:53.000000000'),
 numpy.datetime64('2015-09-20T05:23:11.000000000'),
 numpy.datetime64('2015-09-20T06:10:56.000000000'),
 numpy.datetime64('2015-09-20T16:25:40.000000000'),
 numpy.datetime64('2015-09-20T16:35:07.000000000'),
 numpy.datetime64('2015-11-05T12:35:34.000000000'),
 numpy.datetime64('2015-08-09T04:41:35.000000000'),
 numpy.datetime64('2015-08-09T07:02:36.000000000'),
 numpy.datetime64('2015-08-05T14:28:15.000000000'),
 numpy.datetime64('2015-09-11T22:50:58.000000000'),
 numpy.datetime64('2015-09-11T23:32:33.000000000'),
 numpy.datetime64('2015-09-11T20:29:20.000000000'),
 numpy.datetime64('2015-08-05T12:16:00.000000000'),
 numpy.datetime64('2015-08-05T09:34:20.000000000'),
 numpy.datetime64('2015-08-02T07:08:35.000000000'),
 numpy.datetime64('2015-09-11T20:09:08.000000000'),
 numpy.datetime64('2015-09-16T07:10:01.000000000'),
 numpy.datetime64('2015-09-16T13:08:15.000000000'),
 numpy.datetime64('2015-08-02T22:06:41.000000000'),
 numpy.datetime64('2015-08-02T02:59:38.000000000'),
 numpy.datetime64('2015-09-16T22:51:53.000000000'),
 numpy.datetime64('2015-05-14T20:02:35.000000000'),
 numpy.datetime64('2015-09-18T19:05:00.000000000'),
 numpy.datetime64('2015-06-25T08:33:41.000000000'),
 numpy.datetime64('2015-05-15T01:02:36.000000000'),
 numpy.datetime64('2015-05-14T22:42:07.000000000'),
 numpy.datetime64('2015-05-11T12:24:34.000000000'),
 numpy.datetime64('2015-09-18T23:19:48.000000000'),
 numpy.datetime64('2015-11-05T12:46:00.000000000'),
 numpy.datetime64('2015-09-18T07:52:23.000000000'),
 numpy.datetime64('2015-06-11T23:10:49.000000000'),
 numpy.datetime64('2015-09-19T00:06:04.000000000'),
 numpy.datetime64('2015-06-18T22:45:58.000000000'),
 numpy.datetime64('2015-06-18T18:23:38.000000000'),
 numpy.datetime64('2015-01-17T16:56:35.000000000'),
 numpy.datetime64('2015-07-19T10:03:29.000000000'),
 numpy.datetime64('2015-06-19T00:15:10.000000000'),
 numpy.datetime64('2015-02-11T14:57:50.000000000'),
 numpy.datetime64('2015-06-18T00:00:00.000000000'),
 numpy.datetime64('2015-06-18T20:00:59.000000000'),
 numpy.datetime64('2015-06-18T09:45:54.000000000'),
 numpy.datetime64('2015-09-18T12:10:04.000000000'),
 numpy.datetime64('2015-09-18T12:54:22.000000000'),
 numpy.datetime64('2015-06-18T08:45:02.000000000'),
 numpy.datetime64('2015-09-26T17:29:46.000000000'),
 numpy.datetime64('2015-10-04T13:17:27.000000000'),
 numpy.datetime64('2015-06-25T10:57:48.000000000'),
 numpy.datetime64('2015-06-18T19:11:42.000000000'),
 numpy.datetime64('2015-06-18T19:36:21.000000000'),
 numpy.datetime64('2015-06-18T07:49:52.000000000'),
 numpy.datetime64('2015-06-18T09:04:31.000000000'),
 numpy.datetime64('2015-07-04T23:36:38.000000000'),
 numpy.datetime64('2015-09-20T11:17:35.000000000'),
 numpy.datetime64('2015-07-04T20:54:17.000000000'),
 numpy.datetime64('2015-07-05T00:57:28.000000000'),
 numpy.datetime64('2015-08-02T13:11:27.000000000'),
 numpy.datetime64('2015-09-20T14:04:08.000000000'),
 numpy.datetime64('2015-08-02T23:23:17.000000000'),
 numpy.datetime64('2015-11-04T08:57:27.000000000'),
 numpy.datetime64('2015-09-20T23:51:22.000000000'),
 numpy.datetime64('2015-09-20T07:53:08.000000000'),
 numpy.datetime64('2015-09-21T00:32:41.000000000'),
 numpy.datetime64('2015-09-26T01:07:52.000000000'),
 numpy.datetime64('2015-09-25T21:50:44.000000000'),
 numpy.datetime64('2015-09-25T19:08:29.000000000'),
 numpy.datetime64('2015-09-14T18:24:09.000000000'),
 numpy.datetime64('2015-06-25T19:23:49.000000000'),
 numpy.datetime64('2015-09-14T23:31:28.000000000'),
 numpy.datetime64('2015-09-16T10:01:14.000000000'),
 numpy.datetime64('2015-08-10T15:49:20.000000000'),
 numpy.datetime64('2015-09-28T11:04:56.000000000'),
 numpy.datetime64('2015-09-29T08:59:03.000000000'),
 numpy.datetime64('2015-09-12T11:46:03.000000000'),
 numpy.datetime64('2015-06-04T09:35:55.000000000'),
 numpy.datetime64('2015-05-11T19:03:56.000000000'),
 numpy.datetime64('2015-05-21T05:46:39.000000000'),
 numpy.datetime64('2015-05-21T20:11:28.000000000'),
 numpy.datetime64('2015-05-21T13:48:28.000000000'),
 numpy.datetime64('2015-09-29T20:11:20.000000000'),
 numpy.datetime64('2015-05-08T14:49:07.000000000'),
 numpy.datetime64('2015-05-08T11:12:24.000000000'),
 numpy.datetime64('2015-09-18T10:38:44.000000000'),
 numpy.datetime64('2015-05-08T12:25:28.000000000'),
 numpy.datetime64('2015-05-08T01:33:39.000000000'),
 numpy.datetime64('2015-09-18T07:35:59.000000000'),
 numpy.datetime64('2015-09-18T22:50:13.000000000'),
 numpy.datetime64('2015-10-04T21:41:09.000000000'),
 numpy.datetime64('2015-02-08T13:54:07.000000000'),
 numpy.datetime64('2015-02-25T08:07:41.000000000'),
 numpy.datetime64('2015-09-20T14:28:25.000000000'),
 numpy.datetime64('2015-09-21T17:24:01.000000000'),
 numpy.datetime64('2015-02-25T07:36:30.000000000'),
 numpy.datetime64('2015-09-20T08:19:10.000000000'),
 numpy.datetime64('2015-02-25T17:18:17.000000000'),
 numpy.datetime64('2015-09-25T16:13:13.000000000'),
 numpy.datetime64('2015-02-25T09:50:36.000000000'),
 numpy.datetime64('2015-02-10T13:18:52.000000000'),
 numpy.datetime64('2015-02-10T14:26:37.000000000'),
 numpy.datetime64('2015-09-14T11:30:35.000000000'),
 numpy.datetime64('2015-09-30T12:13:12.000000000'),
 numpy.datetime64('2015-09-30T19:27:03.000000000'),
 numpy.datetime64('2015-09-21T16:21:05.000000000'),
 numpy.datetime64('2015-09-21T12:07:31.000000000'),
 numpy.datetime64('2015-07-05T05:46:42.000000000'),
 numpy.datetime64('2015-11-06T08:16:49.000000000'),
 numpy.datetime64('2015-09-25T22:26:04.000000000'),
 numpy.datetime64('2015-06-04T17:32:00.000000000'),
 numpy.datetime64('2015-09-12T14:59:03.000000000'),
 numpy.datetime64('2015-09-28T10:20:30.000000000'),
 numpy.datetime64('2015-06-04T12:41:56.000000000'),
 numpy.datetime64('2015-06-04T08:37:15.000000000'),
 numpy.datetime64('2015-07-05T20:48:24.000000000'),
 numpy.datetime64('2015-07-05T13:13:33.000000000'),
 numpy.datetime64('2015-10-21T08:29:50.000000000'),
 numpy.datetime64('2015-09-08T13:38:05.000000000'),
 numpy.datetime64('2015-07-05T10:11:18.000000000'),
 numpy.datetime64('2015-09-08T08:38:48.000000000'),
 numpy.datetime64('2015-09-14T22:44:38.000000000'),
 numpy.datetime64('2015-09-14T23:46:58.000000000'),
 numpy.datetime64('2015-08-31T12:57:35.000000000'),
 numpy.datetime64('2015-11-02T17:45:42.000000000'),
 numpy.datetime64('2015-09-14T12:18:37.000000000'),
 numpy.datetime64('2015-09-15T13:30:36.000000000'),
 numpy.datetime64('2015-11-07T18:12:29.000000000'),
 numpy.datetime64('2015-09-16T01:41:20.000000000'),
 numpy.datetime64('2015-11-07T18:29:49.000000000'),
 numpy.datetime64('2015-10-27T19:51:04.000000000'),
 numpy.datetime64('2015-11-06T12:16:57.000000000'),
 numpy.datetime64('2015-09-15T14:35:29.000000000'),
 numpy.datetime64('2015-09-15T22:10:01.000000000'),
 numpy.datetime64('2015-08-06T12:42:40.000000000'),
 numpy.datetime64('2015-08-06T22:39:39.000000000'),
 numpy.datetime64('2015-08-06T22:32:10.000000000'),
 numpy.datetime64('2015-09-15T21:29:16.000000000'),
 numpy.datetime64('2015-09-15T20:34:23.000000000'),
 numpy.datetime64('2015-08-09T20:28:24.000000000'),
 numpy.datetime64('2015-09-21T18:00:00.000000000'),
 numpy.datetime64('2015-09-14T19:08:31.000000000'),
 numpy.datetime64('2015-09-14T12:04:07.000000000'),
 numpy.datetime64('2015-09-14T21:36:26.000000000'),
 numpy.datetime64('2015-09-15T16:37:18.000000000'),
 numpy.datetime64('2015-05-08T19:29:12.000000000'),
 numpy.datetime64('2015-05-15T11:42:20.000000000'),
 numpy.datetime64('2015-09-15T19:22:22.000000000'),
 numpy.datetime64('2015-09-15T11:58:38.000000000'),
 numpy.datetime64('2015-09-15T14:51:52.000000000'),
 ...]

In [39]:
date_index = pd.DatetimeIndex(df['Created Date'].values)#for dataframe, each column is a series(object), call a values method

In [59]:
len([x for x in date_index.month if x == 3])


Out[59]:
2361

In [70]:
iterable = filter(lambda x: x == 3, list(date_index.month))

In [71]:
march_days = 0
for x in iterable:
    march_days += 1
march_days


Out[71]:
2361

I'd like to see all of the 311 complaints called in on April 1st.

Surprise! We couldn't do this in class, but it was just a limitation of our data set


In [83]:
df.index=df['Created Date']
df.head()


Out[83]:
Unique Key Created Date Closed Date Agency Agency Name Complaint Type Descriptor Location Type Incident Zip Incident Address ... Bridge Highway Name Bridge Highway Direction Road Ramp Bridge Highway Segment Garage Lot Name Ferry Direction Ferry Terminal Name Latitude Longitude Location
Created Date
2015-07-06 10:58:27 31015465 2015-07-06 10:58:27 07/22/2015 01:07:20 AM DCA Department of Consumer Affairs Consumer Complaint Demand for Cash NaN 11360 27-16 203 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.773540 -73.788237 (40.773539552542, -73.78823697228408)
2015-07-03 13:26:29 30997660 2015-07-03 13:26:29 07/03/2015 02:08:20 PM NYPD New York City Police Department Vending In Prohibited Area Residential Building/House 10019 200 CENTRAL PARK SOUTH ... NaN NaN NaN NaN NaN NaN NaN 40.767021 -73.979448 (40.76702142171206, -73.97944780718524)
2015-11-09 03:55:09 31950223 2015-11-09 03:55:09 11/09/2015 08:08:57 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 10453 1993 GRAND AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.852671 -73.910608 (40.85267061877697, -73.91060771362552)
2015-07-03 02:18:32 31000038 2015-07-03 02:18:32 07/03/2015 07:54:48 AM NYPD New York City Police Department Noise - Commercial Loud Music/Party Club/Bar/Restaurant 11372 84-16 NORTHERN BOULEVARD ... NaN NaN NaN NaN NaN NaN NaN 40.755774 -73.883262 (40.755773786469966, -73.88326243225418)
2015-07-04 00:03:27 30995614 2015-07-04 00:03:27 07/04/2015 03:33:09 AM NYPD New York City Police Department Noise - Street/Sidewalk Loud Talking Street/Sidewalk 11216 1057 BERGEN STREET ... NaN NaN NaN NaN NaN NaN NaN 40.676175 -73.951269 (40.67617516102934, -73.9512690004692)

5 rows × 53 columns

What was the most popular type of complaint on April 1st?

What were the most popular three types of complaint on April 1st


In [84]:
df['2015-04-01']


Out[84]:
Unique Key Created Date Closed Date Agency Agency Name Complaint Type Descriptor Location Type Incident Zip Incident Address ... Bridge Highway Name Bridge Highway Direction Road Ramp Bridge Highway Segment Garage Lot Name Ferry Direction Ferry Terminal Name Latitude Longitude Location
Created Date
2015-04-01 21:37:42 30311691 2015-04-01 21:37:42 04/01/2015 10:49:33 PM NYPD New York City Police Department Illegal Parking Blocked Sidewalk Street/Sidewalk 11234 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.609810 -73.922498 (40.60980966645303, -73.92249759633725)
2015-04-01 23:12:04 30307701 2015-04-01 23:12:04 04/01/2015 11:32:40 PM NYPD New York City Police Department Noise - Commercial Loud Music/Party Store/Commercial 11205 700 MYRTLE AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.694644 -73.955504 (40.694643700748486, -73.95550356170298)
2015-04-01 13:10:35 30313389 2015-04-01 13:10:35 04/07/2015 04:01:08 PM DPR Department of Parks and Recreation Root/Sewer/Sidewalk Condition Trees and Sidewalks Program Street 11422 245-16 149 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.653016 -73.738626 (40.653016256598534, -73.73862588133056)
2015-04-01 17:37:38 30314393 2015-04-01 17:37:38 04/03/2015 11:40:54 AM DPR Department of Parks and Recreation Maintenance or Facility Hours of Operation Park 11211 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 12:32:40 30309207 2015-04-01 12:32:40 04/17/2015 01:06:49 AM DCA Department of Consumer Affairs Consumer Complaint Installation/Work Quality NaN 11423 90-71 198 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.714299 -73.761158 (40.71429859671565, -73.76115807774032)
2015-04-01 18:44:50 30311759 2015-04-01 18:44:50 06/24/2015 11:27:00 AM DPR Department of Parks and Recreation Damaged Tree Entire Tree Has Fallen Down Street 10467 862 EAST 213 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.878028 -73.860237 (40.87802828144708, -73.86023734606933)
2015-04-01 16:30:15 30309690 2015-04-01 16:30:15 04/01/2015 11:27:22 PM NYPD New York City Police Department Animal Abuse Neglected Residential Building/House 11368 107-15 NORTHERN BOULEVARD ... NaN NaN NaN NaN NaN NaN NaN 40.757811 -73.861677 (40.757811195752154, -73.86167714731972)
2015-04-01 09:04:07 30307990 2015-04-01 09:04:07 04/06/2015 09:17:10 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Miscellaneous Senior Address 10027 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 07:46:58 30308253 2015-04-01 07:46:58 04/01/2015 09:32:31 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11370 32-51 80 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.756412 -73.887405 (40.75641194675221, -73.88740503059863)
2015-04-01 17:12:17 30314214 2015-04-01 17:12:17 04/09/2015 02:20:11 PM DOT Department of Transportation Highway Condition Pothole - Highway Highway NaN NaN ... Long Island Expwy West/Manhattan Bound Roadway Clearview Expwy (I-295) (Exit 27 S-N) - Utopia... NaN NaN NaN NaN NaN NaN
2015-04-01 21:30:48 30307111 2015-04-01 21:30:48 NaN DOHMH Department of Health and Mental Hygiene Food Establishment Food Temperature Restaurant/Bar/Deli/Bakery 11215 709 5 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.660699 -73.994082 (40.660699296661825, -73.99408169463258)
2015-04-01 15:51:04 30311571 2015-04-01 15:51:04 04/14/2015 09:23:30 AM DPR Department of Parks and Recreation Maintenance or Facility Hours of Operation Park 11210 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.621474 -73.950711 (40.62147413119333, -73.95071097029123)
2015-04-01 10:43:28 30313817 2015-04-01 10:43:28 NaN DPR Department of Parks and Recreation Damaged Tree Branch Cracked and Will Fall NaN 10009 620 EAST 12TH STREET ... NaN NaN NaN NaN NaN NaN NaN 40.727725 -73.978204 (40.72772462544187, -73.97820435916094)
2015-04-01 15:12:46 30308922 2015-04-01 15:12:46 06/01/2015 06:25:48 AM DOHMH Department of Health and Mental Hygiene Food Establishment Letter Grading Restaurant/Bar/Deli/Bakery 11238 663 FRANKLIN AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.675746 -73.956122 (40.67574618440852, -73.9561218336512)
2015-04-01 06:15:42 30311132 2015-04-01 06:15:42 04/01/2015 10:28:30 AM DOT Department of Transportation Highway Condition Pothole - Highway Highway 10304 NaN ... Staten Island Expwy East/Brooklyn Bound Roadway Clove Rd/Richmond Rd (Exit 13) - Lily Pond Ave... NaN NaN NaN 40.606875 -74.085408 (40.60687536641399, -74.0854077221027)
2015-04-01 11:28:02 30308180 2015-04-01 11:28:02 04/01/2015 11:42:53 AM DOT Department of Transportation Highway Condition Pothole - Highway Highway 11432 NaN ... Grand Central Pkwy West/Toward Triborough Br Ramp 168th St (Exit 17) NaN NaN NaN 40.719228 -73.791963 (40.71922760413319, -73.791962929951)
2015-04-01 17:35:18 30313207 2015-04-01 17:35:18 06/01/2015 06:25:54 AM DOHMH Department of Health and Mental Hygiene Food Establishment Rodents/Insects/Garbage Restaurant/Bar/Deli/Bakery 10011 140 WEST 13 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.737182 -73.998585 (40.737182358685516, -73.99858548189518)
2015-04-01 13:54:54 30310017 2015-04-01 13:54:54 04/06/2015 10:11:11 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Miscellaneous Senior Address 11435 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 23:49:33 30306774 2015-04-01 23:49:33 04/02/2015 12:20:59 AM NYPD New York City Police Department Noise - Commercial Loud Music/Party Store/Commercial 10003 36 SAINT MARKS PLACE ... NaN NaN NaN NaN NaN NaN NaN 40.728733 -73.988011 (40.72873338955463, -73.98801059255561)
2015-04-01 07:50:49 30313339 2015-04-01 07:50:49 07/08/2015 02:19:25 PM DOT Department of Transportation Street Condition Rough, Pitted or Cracked Roads Street 11385 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.703414 -73.862854 (40.70341423569781, -73.86285397616253)
2015-04-01 13:50:29 30312146 2015-04-01 13:50:29 06/01/2015 06:25:49 AM DOHMH Department of Health and Mental Hygiene Food Establishment Rodents/Insects/Garbage Restaurant/Bar/Deli/Bakery 10028 1291 LEXINGTON AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.780069 -73.955158 (40.78006850471446, -73.95515761412761)
2015-04-01 16:14:19 30313259 2015-04-01 16:14:19 04/01/2015 04:21:53 PM HRA HRA Benefit Card Replacement Benefit Card Replacement Medicaid NYC Street Address NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 19:27:34 30308920 2015-04-01 19:27:34 04/01/2015 08:45:17 PM NYPD New York City Police Department Noise - Street/Sidewalk Loud Music/Party Street/Sidewalk 10017 210 EAST 46 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.753104 -73.972096 (40.75310402468627, -73.97209629231209)
2015-04-01 05:30:02 30314164 2015-04-01 05:30:02 04/01/2015 02:57:31 PM DOT Department of Transportation Highway Condition Pothole - Highway Highway NaN NaN ... BQE/Gowanus Expwy East/Queens Bound Roadway Williamsburg Br / Metropolitan Ave (Exit 32) -... NaN NaN NaN NaN NaN NaN
2015-04-01 10:33:26 30311790 2015-04-01 10:33:26 04/01/2015 11:19:12 AM NYPD New York City Police Department Illegal Parking Blocked Sidewalk Street/Sidewalk 10033 2284 AMSTERDAM AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.843149 -73.934539 (40.84314882753921, -73.93453937669832)
2015-04-01 11:47:38 30310940 2015-04-01 11:47:38 04/06/2015 09:23:32 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Miscellaneous Senior Address 11355 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 11:01:27 30310409 2015-04-01 11:01:27 04/17/2015 01:06:42 AM DCA Department of Consumer Affairs Consumer Complaint Exchange/Refund/Return NaN 10455 2997 3 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.819111 -73.913908 (40.819110789789214, -73.91390802507868)
2015-04-01 08:51:52 30310350 2015-04-01 08:51:52 04/03/2015 04:33:46 PM DCA Department of Consumer Affairs Consumer Complaint Cars Parked on Sidewalk/Street NaN 11223 1701 WEST 8 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.605657 -73.981194 (40.60565667868274, -73.98119372058547)
2015-04-01 14:58:55 30313106 2015-04-01 14:58:55 04/06/2015 10:06:35 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Rent Discrepancy Senior Address 11201 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 16:59:19 30309324 2015-04-01 16:59:19 04/01/2015 07:48:33 PM NYPD New York City Police Department Blocked Driveway Partial Access Street/Sidewalk 11210 650 EAST 24 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.634497 -73.954167 (40.63449684441219, -73.95416735372353)
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2015-04-01 12:14:11 30308181 2015-04-01 12:14:11 04/16/2015 03:52:40 PM DOT Department of Transportation Highway Condition Unsafe Worksite Highway 11103 NaN ... Grand Central Pkwy East/Long Island Bound Roadway 31st (Exit 3) - Brooklyn-Queens Expwy (I-278) ... NaN NaN NaN 40.769309 -73.912236 (40.76930913453694, -73.91223589513348)
2015-04-01 10:00:57 30312096 2015-04-01 10:00:57 04/03/2015 02:35:36 PM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Copy of Approval Order Senior Address 10025 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 08:56:10 30314369 2015-04-01 08:56:10 04/01/2015 11:12:26 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11377 31-36 68 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.757216 -73.899106 (40.7572160209837, -73.89910584068605)
2015-04-01 18:19:48 30310395 2015-04-01 18:19:48 04/17/2015 01:07:04 AM DCA Department of Consumer Affairs Consumer Complaint False Advertising NaN 11372 80-13 37 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.749584 -73.885951 (40.74958432631206, -73.88595125985013)
2015-04-01 16:23:18 30313528 2015-04-01 16:23:18 04/17/2015 01:07:00 AM DCA Department of Consumer Affairs Consumer Complaint Exchange/Refund/Return NaN 11226 850 FLATBUSH AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.651629 -73.959035 (40.651628886860884, -73.95903518064264)
2015-04-01 11:41:29 30312050 2015-04-01 11:41:29 04/06/2015 09:09:45 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Application Renewal Senior Address 10034 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 23:47:24 30314231 2015-04-01 23:47:24 07/28/2015 01:03:24 PM DOT Department of Transportation Street Condition Rough, Pitted or Cracked Roads Street 11377 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.743456 -73.914836 (40.74345557431229, -73.91483581341043)
2015-04-01 08:16:38 30311103 2015-04-01 08:16:38 04/09/2015 09:33:26 AM TLC Taxi and Limousine Commission Taxi Complaint Driver Complaint NaN 11209 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.634792 -74.032318 (40.63479238458042, -74.03231826494591)
2015-04-01 07:04:27 30310725 2015-04-01 07:04:27 04/01/2015 03:47:39 PM NYPD New York City Police Department Illegal Parking Posted Parking Sign Violation Street/Sidewalk 11419 104-22 110 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.684012 -73.831954 (40.68401163822402, -73.83195428896114)
2015-04-01 23:36:08 30311907 2015-04-01 23:36:08 04/02/2015 07:29:05 AM NYPD New York City Police Department Illegal Parking Blocked Hydrant Street/Sidewalk 11228 1343 78 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.617990 -74.008220 (40.617990283460536, -74.00821981214455)
2015-04-01 14:48:14 30308202 2015-04-01 14:48:14 04/01/2015 02:49:13 PM HRA HRA Benefit Card Replacement Benefit Card Replacement Food Stamp NYC Street Address NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 15:26:42 30308819 2015-04-01 15:26:42 04/01/2015 05:19:41 PM NYPD New York City Police Department Illegal Parking Posted Parking Sign Violation Street/Sidewalk 11101 43-10 CRESCENT STREET ... NaN NaN NaN NaN NaN NaN NaN 40.748707 -73.942316 (40.74870685388612, -73.94231592971958)
2015-04-01 19:08:07 30313580 2015-04-01 19:08:07 04/07/2015 11:25:05 AM DOT Department of Transportation Street Condition Defective Hardware Street 11208 880 GLENMORE AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.675876 -73.877688 (40.67587618287245, -73.87768812152434)
2015-04-01 22:06:37 30313046 2015-04-01 22:06:37 04/02/2015 12:40:09 AM NYPD New York City Police Department Noise - Street/Sidewalk Loud Music/Party Street/Sidewalk 10454 592 OAK TERRACE ... NaN NaN NaN NaN NaN NaN NaN 40.808939 -73.914543 (40.80893932182981, -73.91454250715576)
2015-04-01 00:09:40 30298884 2015-04-01 00:09:40 04/01/2015 02:17:16 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11433 150-38 107 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.694510 -73.800763 (40.69451003870482, -73.80076336778066)
2015-04-01 11:43:50 30311054 2015-04-01 11:43:50 04/06/2015 09:12:54 AM DOF Senior Citizen Rent Increase Exemption Unit SCRIE Copy of Approval Order Senior Address 10003 NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2015-04-01 13:30:29 30307424 2015-04-01 13:30:29 04/13/2015 12:20:33 PM DOT Department of Transportation Street Condition Failed Street Repair Street 11364 67-07 BELL BOULEVARD ... NaN NaN NaN NaN NaN NaN NaN 40.743972 -73.759771 (40.74397211975241, -73.75977055909947)
2015-04-01 07:33:41 30314352 2015-04-01 07:33:41 04/13/2015 12:27:12 PM DOT Department of Transportation Street Condition Cave-in Street 11357 14-51 143 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.785713 -73.826140 (40.7857127748661, -73.82614011947928)
2015-04-01 12:28:15 30312905 2015-04-01 12:28:15 04/01/2015 02:29:53 PM NYPD New York City Police Department Illegal Parking Double Parked Blocking Traffic Street/Sidewalk 11372 72 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.749789 -73.893794 (40.74978944638325, -73.89379359227247)
2015-04-01 12:17:19 30311302 2015-04-01 12:17:19 04/17/2015 01:06:56 AM DCA Department of Consumer Affairs Consumer Complaint Illegal Tow NaN 11232 14 53 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.648964 -74.021255 (40.648963544502585, -74.02125458310132)
2015-04-01 12:08:19 30314467 2015-04-01 12:08:19 04/09/2015 02:43:13 PM DOT Department of Transportation Street Condition Failed Street Repair Street 11428 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.722832 -73.748158 (40.72283183191531, -73.74815780857023)
2015-04-01 17:43:25 30311231 2015-04-01 17:43:25 04/01/2015 10:50:39 PM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11435 143-30 LAKEWOOD AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.689215 -73.803877 (40.68921522366862, -73.80387663789386)
2015-04-01 18:30:35 30307426 2015-04-01 18:30:35 04/13/2015 12:15:11 PM DOT Department of Transportation Street Condition Failed Street Repair Street 11362 NaN ... NaN NaN NaN NaN NaN NaN NaN 40.750641 -73.739344 (40.75064138697133, -73.7393436538413)
2015-04-01 13:30:31 30308409 2015-04-01 13:30:31 04/13/2015 12:19:28 PM DOT Department of Transportation Street Condition Failed Street Repair Street 11379 79-17 68 ROAD ... NaN NaN NaN NaN NaN NaN NaN 40.710496 -73.872661 (40.71049602255762, -73.8726613318581)
2015-04-01 01:28:45 30298825 2015-04-01 01:28:45 04/01/2015 02:36:49 AM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11232 4001 8 AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.646630 -73.997960 (40.646629679609966, -73.99796038095705)
2015-04-01 08:52:11 30307104 2015-04-01 08:52:11 04/02/2015 04:34:46 PM DCA Department of Consumer Affairs Consumer Complaint Installation/Work Quality NaN 10469 3033 YOUNG AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.870105 -73.847979 (40.870105314232546, -73.84797875606117)
2015-04-01 11:12:49 30310013 2015-04-01 11:12:49 04/06/2015 11:47:20 AM DOT Department of Transportation Street Sign - Damaged Street Cleaning - ASP Street 10026 17 LENOX AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.798932 -73.951952 (40.7989317549172, -73.9519520651255)
2015-04-01 16:18:23 30311889 2015-04-01 16:18:23 04/01/2015 11:11:11 PM NYPD New York City Police Department Derelict Vehicle With License Plate Street/Sidewalk 11226 485 EAST 17 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.638946 -73.962055 (40.638946273235284, -73.96205520207174)
2015-04-01 13:16:44 30312450 2015-04-01 13:16:44 04/01/2015 02:30:55 PM NYPD New York City Police Department Blocked Driveway No Access Street/Sidewalk 11372 37-18 73 STREET ... NaN NaN NaN NaN NaN NaN NaN 40.748262 -73.892616 (40.748262273356396, -73.89261586191228)
2015-04-01 20:27:33 30313471 2015-04-01 20:27:33 04/17/2015 01:07:09 AM DCA Department of Consumer Affairs Consumer Complaint Overcharge NaN 11226 3008 CHURCH AVENUE ... NaN NaN NaN NaN NaN NaN NaN 40.650810 -73.949370 (40.6508098378492, -73.94937030940775)

147 rows × 53 columns


In [85]:
df['2015-04-01']['Complaint Type'].value_counts().head(3)


Out[85]:
Street Condition      18
Illegal Parking       15
Consumer Complaint    12
Name: Complaint Type, dtype: int64

What month has the most reports filed? How many? Graph it.


In [90]:
df.resample('M').count().plot(y="Unique Key",legend=False)
#http://pandas.pydata.org/pandas-docs/stable/timeseries.html#up-and-downsampling
#resample is a time-based groupby, followed by a reduction method on each of its groups


Out[90]:
<matplotlib.axes._subplots.AxesSubplot at 0x11544af28>

In [91]:
ax= df.groupby(df.index.month).count().plot(y='Unique Key', legend=False)
ax.set_xticks([1,2,3,4,5,6,7,8,9,10,11, 12])
ax.set_xticklabels(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'])
ax.set_ylabel("Number of Complaints")
ax.set_title("311 complains filed monthly in 2015")
#september has the most complaints cases filed


Out[91]:
<matplotlib.text.Text at 0x1156f2198>

What week of the year has the most reports filed? How many? Graph the weekly complaints.


In [ ]:


In [ ]:

Noise complaints are a big deal. Use .str.contains to select noise complaints, and make an chart of when they show up annually. Then make a chart about when they show up every day (cyclic).


In [ ]:


In [ ]:

Which were the top five days of the year for filing complaints? How many on each of those days? Graph it.


In [ ]:


In [ ]:

What hour of the day are the most complaints? Graph a day of complaints.


In [ ]:


In [ ]:

One of the hours has an odd number of complaints. What are the most common complaints at that hour, and what are the most common complaints the hour before and after?


In [ ]:


In [ ]:


In [ ]:

So odd. What's the per-minute breakdown of complaints between 12am and 1am? You don't need to include 1am.


In [ ]:

Looks like midnight is a little bit of an outlier. Why might that be? Take the 5 most common agencies and graph the times they file reports at (all day, not just midnight).


In [ ]:

Graph those same agencies on an annual basis - make it weekly. When do people like to complain? When does the NYPD have an odd number of complaints?


In [ ]:

Maybe the NYPD deals with different issues at different times? Check the most popular complaints in July and August vs the month of May. Also check the most common complaints for the Housing Preservation Bureau (HPD) in winter vs. summer.


In [ ]:


In [ ]:


In [ ]:


In [ ]:


In [ ]: