See below for an informational digital zine on the FCC’s Fairness Doctrine.
For this first project, I put myself into the shoes of a DSNY (Department of Sanitation NY) data analyst. I would like to examine the 311 calls that DSNY handles and see if there are any specific types of complaints that need to be addressed, more so than others. In an initial filtering of the data, I think a good way to get the data simplified is to look at it in three ways: citizen issues, sanitation issues, and other issues that do not fit within either of the categories. To further clarify, citizen issues deals with problems that are caused by the average New Yorker – of illegal dumping, residents not cleaning up their garbage properly, etc. Sanitation issues refer to problems caused by the department itself – of complaints about workers, baskets not being picked up, etc. I wonder: As we continue into this new normal, which specific complaints can the DSNY focus on to decrease the amount of sanitation-related 311 calls the city receives and, more consequently, improve the quality of life of New Yorkers and performance of the agency? Additionally, how has the volume of DSNY-related 311 service requests changed throughout the pandemic?
Each of the complaint types were coded the following way:
Citizen Issues |
Sanitation Issues |
Other |
Abandoned Bike | Collection Truck Noise |
Litter Basket / Request
|
Derelict Bicycle | DSNY Spillage |
Other Enforcement
|
Derelict Vehicle | Employee Behavior |
Sanitation Condition
|
Dirty Conditions | Missed Collection | Snow |
Graffiti | Missed Collection (All Materials) |
Vacant Lot
|
Recycling Enforcement
|
Overflowing Litter Baskets | |
Snow Removal | ||
Sweeping/Inadequate | ||
Sweeping/Missed |
The 311 Service Requests were sorted through and pulled from NYC Open Data. Since analysis is for the time period of the pandemic, data was pulled from March 11, 2020 (my first day of working from home) through August of 2021.
City officials, specifically in the DSNY, but also beyond at City Hall, would be interested in seeing the answer to the research questions above. Having this information would be beneficial to these stakeholders because it can influence where departmental resources are distributed for more efficient use of the DSNY workforce. Additionally, this information can determine if there is any legislation that can be passed to improve conditions for New Yorkers.
To begin I created a stacked bar chart to demonstrate which types of issues are reported most frequently and further, to show which complaint types are most common in each. I chose to do a stacked bar chart because it allows us to see both of these measures in one chart.
In reviewing the stacked bar chart above, we can observe the following:
Design choices for stacked bar chart:
I tried to keep this chart simple, as to communicate clearly. I coded each of the issue types with different colors and then made a gradient for each of the complaint types. We primarily look at the quantities here, so I made sure the tooltip only contained the important information – the complaint type and quantity.
Below, we see how DSNY-related 311 service request volume has changed throughout the pandemic. It is important to note that for all graphs below, we used the date that the report was created, which would correspond to the day that the call was initially made.
I also broke these out into the different issue-type categories to see if there was anything to glean from those differences.
We can observe the following:
I am most interested in doing further analysis on the Missed Collection, Dirty Conditions, and Derelict Vehicle complaint types as those are the most common 311 reports to the DSNY. Further analysis of these complaint types can provide information to resolve the most frequent complaints from both issue categories.
We can observe from the line graph above:
Design Choices for Line Graphs: I decided to make the line graphs very simple and thought that it was more beneficial to split the categories and complaint types into different graphs to make it more easy to view.
I had initially tried to do these charts as a bar graph or pie chart. Both were quite ineffective and unnecessary, so I decided to go with a table. We can observe that in all of these categories, most of the tickets are closed.
Opportunities for further analysis:
There are many interesting things to be gleaned from looking at the DSNY 311 Data. It is fair to conclude that both Citizen and Sanitation issues are of big concern and that the Missed Collection, Dirty Conditions, and Derelict Vehicle complaint types are the most common. It would be fair to suggest that DSNY officials take a closer look at these specific complaint types to try and decrease the amount of calls they get in those categories.
Interestingly, it appears that the Winter months of 2021 got the highest volume of 311 complaint calls with another spike happening in the warmer months of 2020.
With this, there are definitely more questions and further analysis to be done.
Recently, President Biden has proposed a large 2 trillion-dollar infrastructure plan. Within that plan, the New York Times reports that up to $174 billion of it will be used to “encourage Americans to switch to cars and trucks that run on electricity” (Chokshi). A big part of that money will go towards incentivizing the growth of electric vehicle (EV) charging stations.
I have always taken an interest in the growth of electric vehicles, as I believe they are the future of transportation in the United States. Currently, I drive a Mazda vehicle that runs on gasoline, but hope that I can switch over to an electric vehicle soon. Unfortunately, I am not yet equipped to do that and neither is the infrastructure of our country. Driving through my neighborhood of Bensonhurst, Brooklyn, you are able to find a gas station every few blocks. Charging stations for vehicles are much harder to come by. The biggest obstacle to electric car growth in my mind is the accessibility to charging stations. Consumers will not buy an electric vehicle if they believe it is too difficult to “fill up.” The new infrastructure plan has given me hope that we will see a sharp increase in the amount of charging stations across the country, making it more accessible and easier for those who would like to buy an electric car, but cannot.
For this project, I am taking a look at the number of charging stations in the United States using spatial data from the US Department of Energy. With this data, I will map out the charging stations in the US and using processing tools in QGIS, I will see which states have the most charging stations available. Using population data from the US Census Bureau, I will also take a look at the best locations for public charging stations on a per capita basis. Zooming in, I will take a look at the charging stations in NYC and determine which neighborhoods would be best to live in if you own an electric vehicle, based on Neighborhood Tabulation Areas from NYC Open Data.
To begin, I needed to locate the correct data. I began by pulling the Cartographic Boundaries from US Census Bureau for States and Counties in Shapefile format.
These Cartographic Boundaries did not have population data included in them, so I needed to find a way to join the data together before doing anything with the EV Charging Station Data. I then pulled Population Data from the US Census Bureau as CSVs for states and counties. For this, I used the 2019 estimated population because the 2020 census data has not yet been released.
I imported the data into QGIS for processing.
For the states, it is quite an easy join. Using the QGIS Processing Tool, Join by Field Value (using State Name to do so), I successfully joined population counts to the state boundaries.
For the counties, I had much more processing and cleaning to do. In Excel, I added a new column and used the concatenate function to create a string with “State Number – County Name” for the population data. In QGIS, I used the Field Calculator to create a new column with the same naming convention in the shapefile of county boundaries. Since both data sources (the county boundaries shapefile and CSV of population estimates) were from the Census Bureau, using the Join by Field value Function worked well enough because the strings were similar, using the same naming conventions. The data cleaning I had to do however was quite time-consuming. In the states of Louisiana, which named counties “Parish” instead of “County” and Alaska which used “Borough,” I adjusted the data in the CSV to match. I did this fix with Virginia as well which used “city” for a number of counties. There was also a location that had a Spanish tilde (ñ) that seemed to have issues processing, so I manually inputted information for that New Mexico county. I was able to identify these issues when I ran the Join by Field Value function in QGIS.
In addition, I also removed data from any non-states (except DC) such as US Virgin Islands & Guam, since population numbers were not provided for them.
Once my boundary layers were successfully joined with population data, I was able to import the data for charging stations using a delimited text layer. I pulled the CSV file from the Department of Energy database. The data is pulled from May 18, 2021. It is important to note that I only pulled the locations of US-based, public, Level 2, and DC Fast electric charging stations to use for this project.
As Freewire Tech explains, there are 3 different types of electric charging stations: Level 1, Level 2, and DC Fast Charging. They say: “In general, chargers are defined by the number of kilowatts (kW) they output. Each kilowatt-hour (kWh) received by a standard passenger-sized EV equates to about 4 miles of driving range. The higher the output from the charger, the faster the EV battery will recharge” (Freewire). To avoid going into unnecessary detail, Level 1 chargers can take over 24 hours to give an electric vehicle a full charge, which makes them impractical for the purposes of this analysis, as those looking for a charging station would want faster charging options. Level 2, the most common charger currently out there, can provide a full charge in about 8 hours, while a DC Fast Charger can take 60-90 minutes for a full charge. Additionally, there are under 1,000 Level 1 public charging stations in the US anyway. Due to their low number and inefficiency when it comes to charging time, I have excluded Level 1 stations from analysis.
For state boundaries and county boundaries, I used the Point Counts in Polygon tool to reveal the locations with the most charging stations. I did this in two ways: with population considered (on a per capita basis) and population not considered (just looking at total number of stations). I saved the joined and counted shapefiles into CSVs to process in Google Sheets. To display the different charging stations, I put the data in different ArcGIS maps embedded below. Underneath are my findings from my work in QGIS. I also pulled the Neighborhood Tabulation Areas from NYC Open Data, which are the NYC neighborhood boundaries to do a zoomed-in analysis of NYC. In my conclusion, I analyze my findings deeper and discuss what they tell us about the state of electric vehicle charging stations in the US.
Data processing was done using QGIS, Excel, and Google Sheets.
State | Number of Total Stations |
California | 13,017 |
New York | 2,454 |
Florida | 2,172 |
Texas | 2,016 |
Massachusetts | 1,692 |
Washington | 1,481 |
Georgia | 1,420 |
Colorado | 1,314 |
Maryland | 1,005 |
Missouri | 964 |
California tops the list for the state with the most EV charging stations by a large amount.
Looking at the data, 21 states in the list have under 250 electric vehicle charging stations.
You can click on each state to see how many charging stations are in each.
State | 2019 Population Estimate | EV Stations per State | EV Stations Per 100,000 People |
Vermont | 623,989 | 284 | 45.5 |
District of Columbia | 705,749 | 234 | 33.2 |
California | 39,512,223 | 13,017 | 32.9 |
Hawaii | 1,415,872 | 361 | 25.5 |
Utah | 3,205,958 | 794 | 24.8 |
Massachusetts | 6,892,503 | 1,692 | 24.5 |
Colorado | 5,758,736 | 1,314 | 22.8 |
Oregon | 4,217,737 | 826 | 19.6 |
Rhode Island | 1,059,361 | 207 | 19.5 |
Washington | 7,614,893 | 1,481 | 19.4 |
The data shows that 32 states have under 10 EV charging stations per 100,000 people.
I found that looking at the breakdown by county was more illuminating.
County Name | State | EVs per County |
Los Angeles | California | 3,101 |
Santa Clara | California | 1,533 |
Orange | California | 1,406 |
San Mateo | California | 999 |
San Diego | California | 955 |
King | Washington | 782 |
Alameda | California | 746 |
Maricopa | Arizona | 558 |
Fulton | Georgia | 551 |
Middlesex | Massachusetts | 525 |
Travis | Texas | 482 |
Riverside | California | 462 |
Jackson | Missouri | 461 |
Cook | Illinois | 456 |
Salt Lake | Utah | 441 |
Sacramento | California | 371 |
San Francisco | California | 357 |
New York | New York | 352 |
Miami-Dade | Florida | 344 |
Johnson | Kansas | 342 |
San Bernardino | California | 312 |
Harris | Texas | 312 |
Suffolk | Massachusetts | 307 |
Contra Costa | California | 292 |
Orange | Florida | 290 |
California certainly dominates the list with counties with the most EV charging stations.
Strikingly, 1,391 counties have no charging stations.
Note: Since County populations are on the smaller side, I adjusted this to be per 10,000 people as opposed to 100,000 people like above.
County Name | State | 2019 Population Estimate | EVCSs per County | EVCs per 10,000 People |
Alpine | California | 1,129 | 4 | 35.4 |
Richmond | Virginia | 9,023 | 31 | 34.4 |
Hinsdale | Colorado | 820 | 2 | 24.4 |
Wheeler | Oregon | 1,332 | 3 | 22.5 |
Kane | Utah | 7,886 | 13 | 16.5 |
Pitkin | Colorado | 17,767 | 29 | 16.3 |
Chattahoochee | Georgia | 10,907 | 17 | 15.6 |
San Juan | Colorado | 728 | 1 | 13.7 |
Warren | New York | 63,944 | 84 | 13.1 |
San Mateo | California | 766,573 | 999 | 13.0 |
Mineral | Colorado | 769 | 1 | 13.0 |
Eagle | Colorado | 55,127 | 71 | 12.9 |
Cook | Minnesota | 5,463 | 7 | 12.8 |
Storey | Nevada | 4,123 | 5 | 12.1 |
Hamilton | New York | 4,416 | 5 | 11.3 |
Grand | Utah | 9,754 | 11 | 11.3 |
Jones | South Dakota | 903 | 1 | 11.1 |
Napa | California | 137,744 | 152 | 11.0 |
Essex | New York | 36,885 | 39 | 10.6 |
Gilliam | Oregon | 1,912 | 2 | 10.5 |
Teton | Wyoming | 23,464 | 24 | 10.2 |
Custer | South Dakota | 8,972 | 9 | 10.0 |
Garfield | Utah | 5,051 | 5 | 9.9 |
Dolores | Colorado | 2,055 | 2 | 9.7 |
Nantucket | Massachusetts | 11,399 | 11 | 9.6 |
The average and median for charging stations per 10,000 people in the counties are both under 1.
Using the Neighborhood Tabulation Areas from NYC Open Data as the boundary, I was able to see which neighborhoods have the most (and least) electric vehicle charging stations in New York City. It does not seem useful to do this on a per capita basis, given that the numbers are quite low.
Neighborhood | Borough | NYC Neighborhood EVCS Count |
Midtown-Midtown South | Manhattan | 35 |
Upper East Side-Carnegie Hill | Manhattan | 32 |
Lenox Hill-Roosevelt Island | Manhattan | 31 |
Turtle Bay-East Midtown | Manhattan | 30 |
Hudson Yards-Chelsea-Flatiron-Union Square | Manhattan | 27 |
Upper West Side | Manhattan | 25 |
West Village | Manhattan | 23 |
Battery Park City-Lower Manhattan | Manhattan | 22 |
Lincoln Square | Manhattan | 19 |
DUMBO-Vinegar Hill-Downtown Brooklyn-Boerum Hill | Brooklyn | 19 |
Yorkville | Manhattan | 18 |
Murray Hill-Kips Bay | Manhattan | 18 |
SoHo-TriBeCa-Civic Center-Little Italy | Manhattan | 16 |
Clinton | Manhattan | 15 |
North Side-South Side | Brooklyn | 14 |
Hunters Point-Sunnyside-West Maspeth | Queens | 13 |
Airport | Queens | 13 |
Flushing | Queens | 9 |
Brooklyn Heights-Cobble Hill | Brooklyn | 8 |
Old Town-Dongan Hills-South Beach | Staten Island | 7 |
Fort Greene | Brooklyn | 7 |
Park Slope-Gowanus | Brooklyn | 6 |
East Harlem South | Manhattan | 6 |
Forest Hills | Queens | 6 |
Morningside Heights | Manhattan | 6 |
New Springville-Bloomfield-Travis | Staten Island | 6 |
Chinatown | Manhattan | 6 |
16 of the top 27 NYC neighborhoods with the most electric vehicle charging stations are in Manhattan. For those in NYC, Manhattan clearly has an edge when it comes to electric vehicles.
Even more interesting is that 103 neighborhoods in NYC do not have even one public EV charging station. That is more than 50% of the neighborhood within NYC.
In my analysis, I found that many locations in the US are lacking public access to high-speed electric vehicle charging. This is a gigantic barrier to the growth of electric vehicles. If people are unable to access charging to “fill up” their car, then they won’t want to purchase an electric vehicle.
Some striking findings bulleted below:
These statistics show that electric vehicles have a long way to go to become a dominant force in transportation in the US.
For comparison purposes, a simple Google search of how many gas stations in America tells us that there are over 100,000 gas stations in the country. According to my data, there are approximately 42,000 EV charging stations. For us to catch up to the amount of gas stations, we would need over a 100% increase in the amount of electric vehicle charging stations. It is quite clear that we have a lot of work to do if we want electric vehicles to be widely used in the US.
With that said, there is hope. If the federal government injects the industry with money, there can be rapid growth in EVs. One suggestion I would have to legislators is to provide different tax incentives for EV charging companies to grow. Big businesses in retail can also get involved in the growth of EV charging stations by providing space in their parking lots for people to charge their vehicles. Since we are not yet at the point where electric vehicles “fill up” in minutes like at a gas station, this would also increase the amount of shoppers who are waiting for their vehicle to charge, stimulating the retail economy that is increasingly at risk with the rise of online shopping. The fight for more sustainable and eco-friendly uses of energy continues!
I would love to find the number of EV drivers in each state and county and try to determine the amount of EV charging stations with respect to those figures, instead of on a per capita/population basis. This would require much more research to see if this data exists and would be more difficult to process. The findings, however, can be beneficial to review.
I would also love to compare this data to the amount of gas stations in the US on a county-by-county basis. I am not sure my computer would have the capacity to handle a data set of that size, but it would definitely be interesting for comparison purposes.
For reference, you can see the US Department of Energy Alternative Fueling Station Locator below.
All map layouts were done with QGIS. Attribute tables are embedded from Google Sheets.
Questions with their answers are below. All mapping work is done within the EPSG: 2263, NAD83/New York Long Island (ftUS) Coordinate Reference System. If you wish to see some of the pre-processing steps done with the different data sets/layers, you can see my document submission to Blackboard here.
Disclaimer: Pre-processing of the data done in QGIS was performed with inexact methods, so final figures may vary from other methods of data cleaning.
Below, I have embedded a Google Sheet that contains all of the arrests per capita in each neighborhood of New York City in 2020.
To do this in QGIS, I joined Census Tracts & Census Population Data from Session 8 of Class. Then converted that joined layer into centroids (points). I then used those points to join them to NTA (Neighborhood Tabulation Areas) from NYC Open Data. Then, with the arrest data provided in the Lab 3 Assignment, I counted the arrests in each neighborhood (See “ARRESTS” column below). Using the Field Calculator, I added a new column to calculate the per capita amount, which is done with a simple function of dividing the arrests over neighborhood population (“POP18_sum” column below) and multiplying by 100,000.
Neighborhood | Borough | Arrests Per 100,000 People |
Park Cemetery | Queens | 113,227.5 |
Midtown-Midtown South | Manhattan | 9,123.5 |
Hunts Point | Bronx | 6,703.6 |
DUMBO-Vinegar Hill-Downtown Brooklyn-Boerum Hill | Brooklyn | 5,723.8 |
SoHo-TriBeCa-Civic Center-Little Italy | Manhattan | 5,673.0 |
West Brighton | Brooklyn | 5,395.1 |
Springfield Gardens North | Queens | 5,253.8 |
West New Brighton-New Brighton-St. George | Staten Island | 5,123.2 |
Claremont-Bathgate | Bronx | 5,044.4 |
Mott Haven-Port Morris | Bronx | 4,999.0 |
Note: It appears that Park Cemetery is considered a neighborhood in Queens. This is an area with a population of 189 – I think it is more likely that no one lives here, but arrests take place in this area. This discrepancy comes from the imprecise nature of data cleaning that was done in QGIS. I am leaving it as part of the answer, but if I was to use this for official purposes, I would consider removing Park Cemetery from the data because it is an outlier.
Neighborhood | Borough | 2020 Arrests |
East New York | Brooklyn | 3,016 |
East Harlem North | Manhattan | 2,788 |
Mott Haven-Port Morris | Bronx | 2,583 |
Crown Heights North | Brooklyn | 2,515 |
Hudson Yards-Chelsea-Flatiron-Union Square | Manhattan | 2,466 |
Midtown-Midtown South | Manhattan | 2,443 |
Jamaica | Queens | 2,173 |
Williamsbridge-Olinville | Bronx | 2,153 |
Bedford | Brooklyn | 2,056 |
Central Harlem North-Polo Grounds | Manhattan | 1,960 |
Below, I have embedded a Google Sheet that contains 311 Calls per capita in each neighborhood of New York City in 2020. Note that for this question, I put the top 10 overall calls at the top, not per capita., though you can still see all of the calls per capita.
I used the same QGIS Methods as in Question 1 to accomplish this.
Neighborhood | Borough | 311 Calls Count |
Williamsbridge-Olinville | Bronx | 92,906 |
Washington Heights South | Manhattan | 42,560 |
Crown Heights North | Brooklyn | 37,963 |
Flatbush | Brooklyn | 35,765 |
Central Harlem North-Polo Grounds | Manhattan | 35,514 |
Washington Heights North | Manhattan | 35,431 |
Marble Hill-Inwood | Manhattan | 31,851 |
Prospect Lefferts Gardens-Wingate | Brooklyn | 29,910 |
Hamilton Heights | Manhattan | 28,222 |
Upper West Side | Manhattan | 28,160 |
Neighborhood | Borough | 311 Calls Per Capita |
Park-Cemetery-Queens | Queens | 2,249,206.4 |
Williamsbridge-Olinville | Bronx | 152,682.9 |
Park-Cemetery-Brooklyn | Brooklyn | 88,070.6 |
College Point | Queens | 78,133.7 |
Hamilton Heights | Manhattan | 78,045.4 |
Crotona Park East | Bronx | 74,148.6 |
Midtown-Midtown South | Manhattan | 69,802.4 |
Marble Hill-Inwood | Manhattan | 64,525.3 |
Washington Heights South | Manhattan | 62,725.7 |
Norwood | Bronx | 56,879.8 |
North Side-South Side | Brooklyn | 56,781.3 |
NOTE: The Park Cemetery issue seems to have arisen again in this question with the addition of a Brooklyn location in the top ten. As before, I will leave this in, but attribute this to the data cleaning methods used in QGIS.
Ratios can be viewed in the last column of the embedded Google Sheet. To calculate these ratios, I used the Field Calculator in QGIS.
As shown in the spreadsheet above, the average ratio of Calls to Arrest is 29.16 Calls to an Arrest. See table below for three neighborhoods with ratio higher than 3x the average (87.47).
Neighborhood | Call Count | ARRESTS | RATIO-Call-to-Arrest |
Kew Gardens Hills | 15871 | 122 | 130.09 |
Ft. Totten-Bay Terrace-Clearview | 3172 | 28 | 113.29 |
Glen Oaks-Floral Park-New Hyde Park | 3997 | 42 | 95.17 |
Using the Query Builder, I was able to use the keyword “Noise” to pull all the noise complaints from the 311 Call Data. Once that was complete, I used processing tool, Count Points in Polygon, to get the numbers in the spreadsheet below.
Below is an incomplete map layout using proportional symbols, to give a visual aid of the data in the Google Sheet above.
Image below shows the buffers for the MTA Subway Lines. Green is 500 Meters and Yellow is 250 Meters.
Next image, I have zoomed in to each borough and also have the noise complaints layer visible.
Line | Route | 500m Noise Comps |
2 | 7 Avenue Express | 176,480 |
5 | Lexington Avenue Express | 164,662 |
B | 6 Avenue Express | 139,630 |
A | 8 Avenue Express | 134,588 |
D | 6 Avenue Express | 134,257 |
Line | Route | 250m Noise Comps |
2 | 7 Avenue Express | 126,479 |
5 | Lexington Avenue Express | 119,097 |
B | 6 Avenue Express | 73,710 |
1 | Broadway – 7 Avenue Local | 72,588 |
D | 6 Avenue Express | 71,654 |
You can observe that 4 of the 5 of the lines are highest on the list for noise complaint calls within the 250m and 500m buffer. In the table, I made Bold the lines that are different in each.