Scrape StreetEasyΒ to analyze housing price in NYC
My goal is to collect housing prices for both rental and sale in New York city. I looked at three major real estate website including Trulia, Zillow, and StreetEasy. Comparing to the other two websites, StreetEasy gives the most information on the searching results page and the format of each listing is very consistent, which is great for the purpose of web-scraping.
Web Scraping
Web scraping is done using the beautifulsoup package in Python. I created two functions that can loop through all the pages of searching results, and also empty strings to store results. Below are the steps I took to scrape StreetEasy:
Analyzing the HTML page: HTML code of a web page can be viewed by right click and selecting 'Inspect'. This helps us identifying the HTML tags of the information to be scraped
Β Making the soup!: It is important to select the correct parser for your data type. I used HTML parser.
Navigating the parse tree and iterate through tags: once the soup is made, we have the HTML code in Python. We can then find our desired information by searching through HTML tags.
Data Manipulation
For some listings the information on number of bedroom, number of bathroom, and apartment size is incomplete or mixed up. I performed data manipulation to fix the mistaken values and cleaned up the extra symbols such as comma and dollar sign.
Finally, I have two data sets containing the housing information of apartments for rent and apartments for sale. TheΒ for sale data set has 8,456 rows and 8 columns, and the for rent data set has 20,988 rows and 7 columns
Data analysis to identify the most / least investableΒ neighborhoods in NYC
My goal is to identify the most and least profitableΒ neighborhoods in New York City
The ideal neighborhood for investing apartments would have
high rental price
low sale price
So the rent would be higher than the monthly mortgage payment to make a profit.
To achieve my goal, I need a way to compare the rental prices and sale prices. For each neighborhood, I calculated two things:
unit price per square foot for rental prices, and unit price per square foot for sale prices
averaged monthly mortgage under the assumption of 20% down payment, 3.5% annual interest rate, and 30 years mortgage period
Before we begin to compare rental price and sale price, it is important to have a first glance at the dataset.Β I noticed that some neighborhoods have very few number ofΒ listings. The low number of listings could introduce instability and lead to false results. Therefore, I removed neighborhoods with equal or less than 5 listings to ensure the quality of the data. The figure below shows the number of listings (count) and its frequency.
The table belowΒ is some examples of the neighborhoods with more than 5 listings. For instance, one square foot in Astoria costs $2.95 to rent and $792 to buy, and one square foot in Battery Park City costs $6.15 to rent and $2010.6 to buy.
We can expect a linear relationship between the rent unit price and sale unit price; if it costs more to buy, it should cost more to rent. I am interested in the outliers of this linear regression. There are two types of outliers:
Outlier that are located above the regression line with abnormally high sale price (Nolita, Little Italy, Midtown)
Outliers that are located below the regression line with abnormally low sale price (Beekman, Kips Bay)
Type 2 outliers are more likely to be profitable and type 1 outlier are less likely to be profitable.
Looking at the plot above, any points above the regression line have higher sale unit price than the fitted values, indicating they are less likely to be profitable. On the other hand, any points below the regression line have higher unit rental price than the fitted values, suggesting the higher likelihood of being profitable. Outliers are the extreme cases in these two circumstances.
Outlier has the unusual, either very large or very small, y value given its x value. In other words, comparing to all the apartments with rental unit price of $5, Kips Bay is has the lowest sale unit price, and therefore is the most profitable given rental price equals to $5. However, it is not clear that Kips BayΒ is the most profitable neighborhood comparing to the rest of neighborhoods located below the regression line. For example, neighborhood X with $500 sale unit price and $2.9 rent unit price is more profitable than Kips Bay with $1000 sale unit price and $5 rent unit price, but neighborhood B is not an outlier.
To Β assess the profitability more accurately, I calculated the ratio of rent unit price over sale unit price and plotted the distribution of the ratios. Neighborhoods with higher ratio are more profitable.
From this analysis, the top 5 least profitable neighborhoods are listed below and showed in a map. This results matches the linear regression analysis.
Now, the top 5 most profitable neighborhoods are listed below and also showed in a map.
This analysis is based solely on the active listings on StreetEasy.com on 2/18/2016, not considering property tax, HOA fees, utilities, and other fees.
As a biologist, Wendy believes in evidence-base analysis, and is passionate about data. Wendy graduated from the University of Pennsylvania in 2013 with a Masters in Biotechnology. While pursuing a career as a biologist Wendy quickly realized that...
Google
Here are some hyperlinks to web pages that we link to simply because we feel they may be really worth visiting.
Google September 15, 2019
Google
We came across a cool internet site which you may well get pleasure from. Take a appear should you want.
hermes clic clac h bracelet pour homme fausse May 3, 2017
I have been absent for some time, but now I remember why I used to love this blog. Thank you, I‘¦ll try and check back more frequently. How frequently you update your website?
hermes clic clac h bracelet pour homme fausse http://www.topvcabijoux.cn/fake-hermes-clic-h-jewelry-c2.html
James December 28, 2016
Hey wendy yu, i installed python and bsp4 and im have trouble with gettig the data. Can you help me out ? I have python 2.7.13 and beautifulshop4-.4.4.1
Are these the right one?
Wendy Yu October 11, 2016
Hi Emrah,
Can you be more specific?
Thanks,
Wendy
emrah yalaz October 11, 2016
Hi Wendy,
would you be interested in
doing this analysis for me?
best,
emrah
www.yelp.com.mx May 9, 2016
This is a really good tip particularly to those new to the
blogosphere. Brief but very precise info⦠Thank you for sharing this one.
A must read post!