Skip to content

Instantly share code, notes, and snippets.

@rducic
Created October 1, 2014 23:40
Show Gist options
  • Save rducic/1f196afdf2d70de858c1 to your computer and use it in GitHub Desktop.
Save rducic/1f196afdf2d70de858c1 to your computer and use it in GitHub Desktop.
Parking Tickets 2015
{
"metadata": {
"name": "",
"signature": "sha256:3811d3eec82964e891ed4d21cfb68f62168c6fd4e933bb17cc339315b6f7f082"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Import data from https://data.cityofnewyork.us/City-Government/Parking-Violations-Issued-Fiscal-Year-2015/kiv2-tbus\n",
"* Downloaded as csv"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import re\n",
"import collections\n",
"import pandas as pd\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline\n",
"df = pd.read_csv('/Users/rducic/Documents/MyData/Parking_Violations_Issued_-_Fiscal_Year_2015.csv', low_memory=False, parse_dates=['Issue Date'], index_col='Issue Date')\n",
"\n",
"\n",
"# Only grab where Status != 0 where office is known\n",
"\"\"\"\n",
"mask = df['Issuer Code'] != 0\n",
"df = df[mask]\n",
"\"\"\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 12,
"text": [
"\"\\nmask = df['Issuer Code'] != 0\\ndf = df[mask]\\n\""
]
}
],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"# Group by Date and officer \n",
"Daily = df.reset_index().groupby(['Issuer Code', 'Issue Date'])['Summons Number']\n",
"\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 36,
"text": [
"'\\nfor name, group in Daily:\\n print name\\n print group \\n'"
]
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"\n",
"dailyCount = Daily.count()\n",
"dailyCount\n",
"\n",
"#need to know how to filter out \n",
"#dailyCount[dailyCount['Issue Date'] > 2015/01/01]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 41,
"text": [
"Issuer Code Issue Date\n",
"0 2011-06-24 1\n",
" 2013-09-17 1\n",
" 2013-12-10 1\n",
" 2013-12-11 1\n",
" 2014-01-09 1\n",
" 2014-02-28 1\n",
" 2014-03-05 2\n",
" 2014-03-12 1\n",
" 2014-03-20 1\n",
" 2014-03-24 1\n",
" 2014-03-26 747\n",
" 2014-03-27 2084\n",
" 2014-03-28 2227\n",
" 2014-03-31 1659\n",
" 2014-04-01 1620\n",
"...\n",
"999601 2014-08-04 1\n",
" 2014-08-11 1\n",
"999607 2014-06-13 1\n",
" 2014-06-25 1\n",
"999643 2014-07-31 1\n",
"999658 2014-07-22 1\n",
" 2014-08-01 1\n",
"999666 2014-07-13 1\n",
"999680 2014-07-28 1\n",
"999686 2014-06-19 1\n",
"999693 2014-07-31 1\n",
"999779 2014-07-24 1\n",
"999866 2014-08-06 1\n",
"999992 2014-07-07 1\n",
" 2014-08-07 1\n",
"Name: Summons Number, Length: 149868, dtype: int64"
]
}
],
"prompt_number": 41
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"ticketByDay = Daily.agg([('dailyTix', 'count'),])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#, 'Issuer Code'\n",
"grouped = df.groupby([lambda x: x.month])\n",
"\"\"\"for month, group in grouped:\n",
" print month\n",
" print group\n",
"\"\"\"\n",
"byMonthOfficer = grouped['Summons Number'].agg(['count'])\n",
"\n",
"byMonthOfficer.plot()\n",
"\n",
"## WHAT'S A DIFFRENCE BETWEEN COUNT AND SIZE IS IT IN TREATMENT OF NULLS?"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 42,
"text": [
"<matplotlib.axes.AxesSubplot at 0x1276a9b90>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\nYII=\n",
"text": [
"<matplotlib.figure.Figure at 0x10a23c350>"
]
}
],
"prompt_number": 42
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Need to remove outliers \n",
"\"\"\"\n",
"\n",
"OfficerYearMonth = Daily.groupby([Daily.index.get_level_values(0), Daily.index.get_level_values(1).year, Daily.index.get_level_values(1).month])\n",
"Daily['Lower'] = OfficerYearMonth['CustomerCount'].transform( lambda x: x.quantile(q=.25) - (1.5*x.quantile(q=.75)-x.quantile(q=.25)) )\n",
"#Daily['Upper'] = OfficerYearMonth['CustomerCount'].transform( lambda x: x.quantile(q=.75) + (1.5*x.quantile(q=.75)-x.quantile(q=.25)) )\n",
"Daily['Outlier'] = (Daily['CustomerCount'] < Daily['Lower']) #| (Daily['CustomerCount'] > Daily['Upper']) \n",
"\n",
"# Remove Outliers\n",
"Daily = Daily[Daily['Outlier'] == False]\n",
"\n",
"\"\"\"\n"
],
"language": "python",
"metadata": {},
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To DO:\n",
"======"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"* Filter data for months where data is reliable \n",
"* Compare officers and concentrate on parking enforcers \n",
"* Detirmine if month to month performance is consistant \n",
"* Compare number of tickets issued per day and if most tickets are issued at the begin or end of the month\n",
"* Determine if New York city imoses quotas on officers \n",
"\n",
"\n",
"Nice to see\n",
"-----\n",
"* tickets issued by precint \n",
"* ticket issued against map of the city\n",
"* ticket issued in relation to police stations\n"
],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment