Place for Your Pet: What the Data Reveals Apartment that Allow Animals

Posted on Feb 14, 2020

Code: Github 


As a dog owner, I noticed it can be quite challenging to find an apartment where pets are welcome. Sites like Zillow and StreetEasy do not actually provide pet information for their apartment listings, indicating you have to ‘contact the broker’ in order to find the details. On the other hand, listings on Craigslist actually do indicate whether or not an apartment allows pets on the listings. Therefore, I decided to scrape all Craigslist rental listings for all major U.S. cities in hopes to answer the questions below:

  • Which city is the most pet friendly?
  • Do renters need to pay hidden pet premium for the ‘pets allowed’ apartments?
  • Which city is the most expensive to live in relative to income? 
  • If one must live in NYC, which neighborhood is the most pet friendly?
  • Are the apartments ons Craigslist really cheaper than other rental listing websites?

The Project

I scraped two websites: Craigslist and Renthop using Selenium and Scrapy respectively. When using Selenium, I find that having helper functions really helped organize the code better because it doesn’t come with a ready-to-use package like Scrapy. In the craigslist_selenium folder you will find the following files:,, data,, is the main file that needs to be run, and, are class modules with class methods to be imported in the main code, The data folder is created to easily organize the data scraped. On the other hand, the scrapy package is a lot easier to use, and many things are already built for us when we create a new project. The xml path in Scrapy is a lot more comprehensive even for those who do not have much knowledge on HTML. After exploring web scraping with both techniques, I find that Scrapy is much faster and more robust than Selenium. Selenium’s main benefit is working around the infinite scroll websites where the urls do not change while the information updates, which is a shortcoming in using Scrapy. 


A Word cloud of the most frequently used words on the listing titles.


So, what are my discoveries? Not surprisingly, New York is the most expensive city for apartment rentals. Based on Craiglist’s rental listings, one needs to put down $2,757 on average for one month's rent. San Francisco came in a close second  with an average rent of $2,745. The third most expensive city is Boston with an average rent of $2,405. In light of the fact that, the average salary is not the same in all cities, you need more contextual information than a straight comparison of  the average rent .. Accordingly, I normalized the average rent with Average Tech Worker Salary from The following graph displays what percentage of the annual gross salary (before tax)  on average, would go into the rent for a renter working in the tech field in these cities.

Screen Shot 2020-02-13 at 13.25.29 (1)

Now we know that New York is the most expensive place to live in, which city is the most pet friendly? For the purpose of this project, I measured pet friendliness of a city by looking at the proportion of the pets allowed listings in the total listings for that city. It’s not hard to tell that Austin and Seattle are the most pet friendly metropolitan cities in the US, with more than 80% of the rental listings allowing pets, followed by Denver with over 70% pet friendly listings on Craigslist.


My next question was - does it cost more to own a pet when looking for apartments? The answer is yes, though it depends on which city you are in. In New York and Chicago, pet friendly apartments are rarer and more expensive than other apartments. If you specify ‘pets allowed,’ the average rental listings price in these two cities is 25% higher than it is for apartments with no pet specification. On the other hand, Seattle is the second most pet friendly city and landlords do not charge pet owners a noticeable ‘pet premium.’ 

Another interesting finding is that most cities have more cats allowed listings than dogs allowed listing. Also the premium for dogs allowed listings are higher than cats allowed listings, meaning that average listing price for dogs allowed apartments is higher than average listing price for cats allowed apartments.

Diving into NYC, unsurprisingly, Manhattan ranks highest in terms of average rent at $3,365. What’s surprising is that Manhattan is also the most pet friendly borough in NYC with close to 75% of the rental listings allowing pets on Craigslist. The graphs below show the pet friendliness of the different neighborhoods in Manhattan.


Finally, I compared the median rent listing price on Craigslist and Renthop. Rental listings in all neighborhoods with the exception of Soho, Flatiron, and Nolita are 5 to 30% cheaper on Craigslist. This finding is in line with expectations, given that Craigslist is not the official rental listing website and can include some scam and faulty listings. However, if you’d like to take a chance and score an apartment on Craigslist, I find that most listings are posted between 10AM to noon.

Future Work

Given more time, I’d like to build a model by incorporating machine learning techniques to classify whether or not an apartment listing is a scam. I’ve scraped many additional data points that could be used to train this model, and I believe it would be an interesting project to explore and in which to practice my machine learning skills. This does mean that I would have to attend numerous open houses to obtain my accurate training datasets, which could be an interesting experiment. 

About Author

Melanie Zheng

Melanie is currently enrolled in Georgia Institute of Technology for Master's Degree in Computer Science with Machine Learning specialization. She previously worked as a product manager at Viacom and project manager at Citigroup.
View all posts by Melanie Zheng >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 airbnb Alex Baransky alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus API Application artist aws 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 Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Day Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Hiring Partners Industry Experts Instructor Blog Instructor Interview Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter lasso regression Lead Data Scienctist Lead Data Scientist leaflet linear regression Logistic Regression machine learning Maps matplotlib Medical Research Meet the team meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R 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 Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau team TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp