Price of Airbnb: NYC Airbnb Pricing EDA Data Sets

Posted on Feb 3, 2020
The skills I demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.


Airbnb is part of the “sharing economy”, which takes a unique approach toward lodging. It offers you someone’s home as a place to stay instead of a hotel. Airbnb has had explosive growth over the last decade, both in terms of the number of total users and global Airbnb listings worldwide. By March 2020, there are more than 2 million people staying one Airbnb per night. One of the main reasons why people rent an Airbnb property is that it is more cost-effective than staying at a hotel, and this is also the reason why Airbnb is a great option for many people who travel to New York.

There are over millions of visitors come to New York each year and potentially looking for an Airbnb place to stay, which create a huge New York Airbnb market. The project investigates the question that both Airbnb user and hosts would care the most, which is what are factors that can affect the listing price? 

Therefore, for the benefit of Airbnb owners, they know better on how to adjust their price to maximize profits; for costumers, they can also infer how to plan their trips wisely.

Data Sets:

All the data is sourced from Inside Airbnb, which hosts public available data from Airbnb.

The two main data sets:

Listing: Detailed listings data showing 96 attributes for each of the listings. Some attributes used in the project are Price (continuous), Longitude (continuous), Latitude (continuous), Listing_type (categorical), neighborhood (categorical), ratings (continuous) among others. 

Reviews: Detailed reviews given by the guests with 6 attributes, including Data (datetime), Listing_id (discrete), reviewer_id (discrete) and comment (textual).

User Reviews:

In order to discover the potential factors relevant to price, my approach was to first visualize users’ reviews. I used R dplyr, tidyr, and tibble packages to break down all the Airbnb reviews’ individual words and count their frequency except the stops words and nonsense words. Through wordcloud visualization, I see that people talk about location, subway, and host, etc. the most, which inspire me to answer questions such as:

How price shifts based on different neighborhoods? Do the distances to subway affects prices? Besides those, I also want to know what are the demand patterns over each season? How price varied over months, weeks, and holidays?


To inspect whether location affects listing price, I visualized the average price over neighborhoods. Take Manhattan as an example, the graph shows that the neighborhoods close to the central city or famous attractions have higher prices, such as Tribeca, Battery Park City, and Little Italy. Besides Manhattan, user can also explore the trends in Brooklyn, Queens, Staten Island, and Bronx in my shiny app. 

Distances to Subway:

Since we identify that Airbnb users talk about subways a lot, according to my experiences, I assume the accessibility to transportation would also be an important factor that affects the listing and property price. To explore whether the distance to the subway is relevant to price or not, I need to first calculate the distance between each unique listing and the subway.

Since I didn’t have this information available, I found NYC subway geo data and calculated the data I need. I matched each listing’s longitude and latitude to its closest subway entrance’s longitude and latitude by geosphere package in combination with mapply function in r to creatively did the math. Although, the scatter plot and flat regression line told me that the distance to subway has no correlation to price, this is a great experience to realize my idea by data analytics tools.


When it comes to seasonality, I specified the trends by month, weekdays, and holidays. In the shiny app, users can select different years from 2017 to 2019 to compare and contrast the seasonality patterns.

Price over Months:

By scatter plot, we could easily identify that the price is climbing from January towards the end of the year for 2017 and 2018. However, year 2019 shows an abnormal pattern. There is a dramatic price increase from April to October, then the price drop sharply till the December. One reason behind it may because that Airbnb first adjusted their price higher in 2019. However, when Airbnb listing price became too high, Airbnb loose its competitive advantages comparing to hotel price. Thus, visitors no longer prefer rent a Airbnb home. Under the pressure, Airbnb might cut its increased listing price, which counts for the reason of its price declining. 

Price by Day of the Week:

Besides the monthly pattern, Friday and Saturday’s prices are overall higher than any other weekdays. This makes sense because people usually start their vacation or trip on Friday, and Sunday is the day that people leaving their Airbnb and going back to work.

Price over Holidays:

When I match the date data with the US holiday calendar, I also find that Christmas day and New Year’s Day make a larger impact over price than other holidays.

In the end, in order to best present and visualize the findings, I created an interactive shiny app so that user can explore the data sets by different metrics. This project is an ongoing project, since the time was limited when I did that, I wasn’t able to explore factors such as super host, and occupancy etc.. As my study proceeds, I want to apply machine learning to Airbnb pricing and create an Airbnb pricing tool to help Airbnb owner to manage the prices.

A link to my Shiny App:

About Author

Lanqing Yang

Lanqing graduated from Fordham University with a bachelor's degree in New Media and Digital Design. She is currently pursuing a master's degree in the quantitative field to further strengthen her knowledge and skills. Through her problem-solving experience as...
View all posts by Lanqing Yang >

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