When NYC Police Officers Get in Trouble For Their Driving
Classification of NYPD Internal Investigations
New York City Police officers are tasked with enforcing traffic laws, but sometimes cops themselves run afoul of rules about parking, driving while drunk and pursuing suspects in vehicles.
Streetsblog NYC has thoroughly documented NYPD’s chaotic parking near station houses and this year, Police Commissioner Jessica Tisch announced a policy to restrict police vehicle chases after a pattern of deaths and injuries stemming from aggressive pursuits.
In 2024, more than 20 officers were arrested for driving under the influence during the first six months of the year, according to the department. Officers aren’t always fired for drunk driving when it happens off duty, but they are often investigated internally. That includes one off-duty officer, who in 2021, allegedly hit a parked car and then allegedly punched an assistant district attorney who pointed it out.
So I set out to find out how often NYPD officers were investigated for driving, what punishments they received and what specific misconduct that department accused or found them guilty of.
Legal Aid Society already built a fantastic database and lookup tool of NYPD internal records via scraping. See my GitHub repo for more info.
Some caveats: Their dataset of police discipline cases has more than 10,000 rows, but that doesn’t mean there are that many officers involved. One case can have multiple administrative charges associated with it, so officers appear multiple times in the database, sometimes for the same incident.
Another caveat: the most reliable way to link records is using an officers’ tax id, in case multiple officers share a first name, but 2,105 of those values are null.
I wanted to find out how many of these internal discipline cases had to do with driving. I also tried to categorize some other categories of misconduct - for my purposes here, use of force and integrity violations (lying, falsifying reports, etc). There is likely a way to do this with keywords, but the descriptions of charges vary considerably in their phrasing. I only used cases where the data contained a description for the charge. By eliminating those, I only ended up including cases where the disposition was “guilty”, “pleaded guilty” or nolo contendre, or no contest for those who don’t speak Latin. At this point, I had only 4,534 entries to classify.
I used Jeremy Merrill’s technique for AI classification, which involves hand checking a sample of the data and refining the prompt, then estimating accuracy. The AI had an 100% precision score, a 89% recall score and a 92% accuracy rate.
That left me with a list 671 charges related to driving, corresponding to close to 340 different officers. These particular records stemmed from 2010 to 2020, with the greatest number of charges in 2017 (119 individual administrative charges related to driving).
Once I’ve had AI do that, I classified the driving offenses in pandas using keywords, dividing them into offenses that involved intoxication, alcohol or breathalyzer tests, offenses having to do with parking and ones having to do with pursuits. Nearly 100 officers were investigated for charges that had to do with intoxicated driving. That category includes refusing a breathalyzer test. I found around 30 officers got in trouble for their parking. Around 20 officers got in trouble for pursuits.
Some precinct command posts had multiple officers get in trouble for driving investigations. Of course, that doesn't mean their officers had more driving issues than others, just that there were more investigations. Two precincts each had 8 officers get in trouble over the years for driving-related issues. One was Police Service Area 2, which according to its website "serves the New York City Housing Authority developments located within the confines of Patrol Borough Brooklyn North. The command patrols a total of 42 developments within the confines of the 73rd, 75th and 77th precincts." The other precinct tied with it is the northwestern Brooklyn's 72nd Precinct, which includes Sunset Park and Windsor Terrace.
You can view my code for this project in a GitHub repo here.
This template was developed by Jonathan Soma.