Exploring the Ames, Iowa Housing Market: A Data Science Journey


In this blog post, we'll delve into a comprehensive data science project that involved analyzing a dataset of homes sold in Ames, Iowa. Ames, Iowa, is the home of Iowa State University. The dataset encompasses home sales records between 2006 and 2010, and it comprehensively documents the specifics of each house's characteristics and their corresponding sale prices.

With 80 features and 2580 entries, this project aimed to uncover insights, build predictive models, and provide actionable recommendations for potential renovations.

Data Cleaning and Feature Engineering

The journey began with meticulous data cleaning and thoughtful feature engineering. The dataset had features with a large number of missing values. The features with the most significant number of missing values are shown in the table below.

  • We assigned zeros to the numerical variables where N/A meant the house didn't have that feature.
  • We assigned 'None' to categorical variables where N/A meant the house didn't have that feature.
  • The remaining features with N/A values were imputed as follows:
    • "GarageYrBlt" was imputed with "YearBuilt."
    • "Electrical" was imputed with the mode.
    • "MasVnrType" was imputed with 'None.'
    • "MasVnrArea" was imputed with 0.
    • "LotFrontage" was imputed with the median given the "LotConfig" variable.

By ensuring data accuracy and transforming raw features into meaningful variables, we laid the foundation for accurate analyses. Some of the engineer features include:

Exploratory Data Analysis (EDA)

The EDA phase provided critical insights into the dataset's patterns and relationships. An initial digging showed that many of the features had a high correlation. This can be seen by the correlation matrix shown below.

The plot below further explores the relationship between the price of the home and its gross living area. The plot is color-coded by the year the house was built. In general, newer houses have a higher sales price, with some exceptions of dwellings built before 1900 that might have a higher price due to their history.

The year when a house is built doesn't impact the gross living area. However, homes built before 1900 have a more comprehensive range of sizes than those built in the following years.

Another strong predictor of the sale price is the house's overall quality. The quality of the house was ranked from 1 to 10, with 10 being the best quality. The plot below shows that the sale price increases as the quality of the home improves.

The dataset also contains information about the neighborhood where each house is located. We all know the number one rule of real state: "Location, location, location!". We plot each neighborhood's average price per sqft to verify that this rule also applies in Ames, Iowa. It is essential to understand the average house size per neighborhood to see if they have a dependency.  

The bar chart above shows that the price per sqft depends on the neighborhood where the house is located. For instance, the Greens neighborhood has the average price per sqft at around 162$/sqft while OldTown has the lowest at 90$/sqft. The size of the house doesn't have a relationship with the neighborhood.

The following visualization offers a geographical perspective on property values. The size of the circles reflects their average price per square foot. This plot was created using the geopy package. This visual representation offers a geographical perspective on property values, guiding our subsequent analyses.

As location emerged as a solid predictive variable, we split the data into 4 locations. Locations 1, 2, 3, and 4 were determined by grouping homes by neighborhood, sorting by median price per SQFT, and dividing the sorted list into four segments. The plot below shows the relationship between price, area, and location. 

Predictive Modeling

The project involved constructing predictive models using a variety of algorithms listed below:

  • Linear Regression
  • Ridge
  • Lasso
  • PCR
  • XGBoost
  • LightGBM
  • Random Forest
  • PCR
  • ANN

We aimed to identify the best-performing algorithm for our specific case by assessing each model's RMSE and MAPE.

Interestingly, linear regression emerged as the frontrunner among the models. Its impressive predictive power and the added benefit of interpretability made it a standout choice. This meant achieving accurate predictions while understanding how different variables influenced the outcome.

Following our learnings from the EDA, we decided to split the dataset into 4 locations. Locations 1, 2, 3, and 4 were determined by grouping homes by neighborhood, sorting by median price per SQFT, and dividing the sorted list into four segments. This decision allowed us to tailor our approach and build separate linear regression models for each location. The outcome? A refined model that provided more accurate predictions for individual locations, optimizing our overall predictive performance.

When performing linear regression for each location, the total RMSE decreases to 15,284 and 16,413 for the training and test sets, respectively. If we check the RMSE for each location, location, we get the following::

Location 4 performance may be the worst, but we have to remember that it has the higher prices. Let's now look at the MAPE (Mean absolute percentage error):

The table above shows that although location 4 had the largest RMSE, its MAPE was the lowest. This is due to the houses in location 4 having the highest prices. 

The top 3 performing models were:

  1. Location Based Linear Regression
  2. Ridge
  3. Linear regression

The table below summarizes the models’ performance by comparing RMSE.

The table below summarizes the models’ performance by comparing MAPE.

Unveiling the Potential: Renovation Insights

Diving deeper into the coefficients of our refined model, we spotted intriguing patterns. Kitchen and fireplace variables stood out as potential renovation areas. Another feature remodels may not be advisable, considering factors like low coefficients, costs, ROI, and feasibility.

By exploring the projected profit gain associated with kitchens and fireplace remodels, we can provide valuable recommendations to enhance the property's value.

The plot below shows the KitchenQual and Fireple coefficients per location. When renovating the kitchen, location 4 leads to the highest increase in sales price. When adding a fireplace, Location 3 leads to the highest increase in sales price. 

The plot below shows the percentage gain in sales price when renovating the KitchenQual and Fireple per location. When renovating the kitchen, location 3 leads to the highest percentage increase in sales price. When adding a fireplace, Location 2 leads to the highest increase in sales price. 


Our journey through this data science project underscored the power of thorough data exploration, predictive modeling, and targeted recommendations. By combining technical expertise with a keen eye for actionable insights, we transformed a dataset of home sales in Ames, Iowa, into a valuable resource for anyone interested in understanding property trends and maximizing their real estate investments.

As we reflect on this project, it's clear that the world of data science holds boundless opportunities for uncovering hidden gems within seemingly complex datasets.

About Authors


Neiza is a data scientist passionate about uncovering the story behind the data. Neiza worked 10 years as a CPU designer at Intel. She earned a Bachelor and a Master of Science in Electrical Engineering from the University...
View all posts by neizalazo >

Andrew Spicciati

Bachelor of Science in Physics and Astronomy from the University of Washington
View all posts by Andrew Spicciati >

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