Citi Bike visual Analysis of Jersey City in September 2017

Posted on Feb 4, 2018

The skills the authors demonstrated here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.


New York City doesn't appear to be a very bike riding friendly city at the first glance, nevertheless since 2013, New York has had a bike sharing option: Citi Bike.  Since then Citi Bike has doubled its fleet to 12.000 bikes and expanded to Brooklyn, Queens and Jersey City (NJ). I come from a city with a similar project (Stadtrad) and I was interested to see how Citi Bike is used in New York compared to Hamburg, Germany – my hometown using data.


Data Set

The most recent data set available on the website of the NYC DOT is from September 2017 and it covers only rides that started in Jersey City, which I found unfortunate because I was interested in the data for New York City. But the data set has about 33.000 rows, a manageable size for the ShinyApp project, while the most recent one for overall New York (August 2017) has almost 2 million.

The data set contains data about:

  • Trip duration (seconds)
  • Start date & time and end date & time
  • Start and end station name, ID, latitude, longitude
  • Bike ID
  • User type (“Customer” = 24-hour or 7-day pass user; “Subscriber” = annual member)
  • Gender (0=unknown; 1=male; 2=female)
  • Year of birth

For my analysis, I added columns for the weekdays as well as simply weekend and weekday, the start time divided into morning, midday, evening and night; age, distance, and speed. Additionally I created another data frame, routes,  that contains the routes between start and end station as well as the count on how many times those routes have been cycled. For the weekdays I used R Studio function weekdays and to get the distance I used the sp package in R Studio.



Bar Chart: most popular Start Stations on Wednesdays in September 2017

First I explored which stations are used the most and the least. I decided that it might be interesting to see if the top station for start and end station change for different days of the week. I filtered the data set for the top ten most and least used start and end stations and showed the outcome with a bar chart from ggplot.

While neither the most popular / least popular start or end station change significantly over the weekdays, the amount of bike rides differs between weekdays and weekends.

Bar Chart: Showing the different use between weekdays and weekend.


I divided the day in four times – each six hours long. Morning starts at 4 am until 10 am, midday goes from 10 am until 4 pm, evening from 4 pm until 10 pm and between 10 pm and 4 am it's night.

During the week Citi Bike is heavily used in the mornings and evenings compared to the weekends. For middays the data are relatively even as well as for rides during the night. The overall use of Citi Bikes during the weekend is less than during the week, especially for the mornings and the evenings.



After that I took a look at the geographical location the most and least used bike stations. While the most used start and end stations agglomerate around the PATH stations towards New York City: Grove Street, Exchange Place and Newport – the least used start stations are closer to the center of Jersey City and the least popular end stations are in Manhattan With one being up on the Upper West Side. The green ones show the least used stations and the red one the most.

Map showing the most and least popular start stations in Jersey City

Map of the most and least popular end station for rides started in Jersey City







I was also interested in the most popular routes in Jersey City. Knowing already that the PATH station areas are popular start and end station I wanted to see where people most likely go from there.

While I focused on the stations as well as the routes I also explored the people who ride the bike. The graphs can be found on my app website.





After exploring the data set I was surprised about the fact that Citi Bikes aren't used more frequently during the night. As I mentioned before my hometown has a similar set up and everyone used the stadtbikes to ride home after going out at night.

The fact that the amount of use is significantly smaller in the mornings during the weekends makes sense because people sleep in compared to the week when they have to go to work. The agglomeration around the PATH station was also foreseeable due to the fact that a lot of people commute into the City for work and other activities. Because there is a 30 minutes time limit for free riding the rides are shorter than expected. If the User ID were trackable Citi Bike could see if people ride from one station to the other.

Seeing the most common routes the NYC Department of Transportation can use the data to improve those areas with better bike paths as well as traffic light for bikes and extra left turn lanes on the street.

With more time I would have explored the balanced station use – if one station is more used as a start station than an end station in which case there might not always be bikes available and the have to be transported there. I would have also liked to add the weather for each day to see if temperature and rain impact the amount of people who ride the bikes.

My app can be found here. And the code is available on my GitHub.

About Author

Merle Strahlendorf

Merle graduated with a B.S. in Business Administration from the University of Hamburg in Germany in 2015. Since then she has worked as a US Correspondent for multiple German magazines focusing on the marketing, media and communications sector....
View all posts by Merle Strahlendorf >

Related Articles

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 2020 Revenue 3-points agriculture air quality airbnb airline alcohol Alex Baransky algorithm alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus ames dataset ames housing dataset apartment rent API Application artist aws bank loans beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep boston safety Bundles cake recipe California Cancer Research capstone car price Career Career Day citibike classic cars classpass clustering Coding Course Demo Course Report covid 19 credit credit card crime frequency crops D3.js data data analysis Data Analyst data analytics data for tripadvisor reviews data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization database Deep Learning Demo Day Discount disney dplyr drug data e-commerce economy employee employee burnout employer networking environment feature engineering Finance Financial Data Science fitness studio Flask flight delay gbm Get Hired ggplot2 googleVis H20 Hadoop hallmark holiday movie happiness healthcare frauds higgs boson Hiring hiring partner events Hiring Partners hotels housing housing data housing predictions housing price hy-vee Income Industry Experts Injuries Instructor Blog Instructor Interview insurance italki Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter las vegas airport lasso regression Lead Data Scienctist Lead Data Scientist leaflet league linear regression Logistic Regression machine learning Maps market matplotlib Medical Research Meet the team meetup methal health miami beach movie music Napoli NBA netflix Networking neural network Neural networks New Courses NHL nlp NYC NYC Data Science nyc data science academy NYC Open Data nyc property NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time performance phoenix pollutants Portfolio Development precision measurement prediction Prework Programming public safety PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R R Data Analysis R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn seafood type Selenium sentiment analysis sentiment classification Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau teachers team team performance TensorFlow Testimonial tf-idf Top Data Science Bootcamp Top manufacturing companies Transfers tweets twitter videos visualization wallstreet wallstreetbets web scraping Weekend Course What to expect whiskey whiskeyadvocate wildfire word cloud word2vec XGBoost yelp youtube trending ZORI