Crafting the Perfect Wine

Marissa Joy
Posted on Feb 4, 2018


Every year, eager winemakers from around the world submit their creations for judgement with the hopes of joining the ranks of the top winemakers and earners. Wine is typically rated on a 100-Point Scale created by Wine Spectator.  After numerous rounds of testing,  sommeliers give their decision along with an explanation as to why they thought it deserved that rating. The purpose of this project was to look at wine data to see if I could dig up any trends or insights among the qualities of top rated wines so that winemakers can consistently produce excellent quality wine.

Wine Spectator's Rating Scale:

  1. 95-100 Classic: a great wine
  2. 90-94 Outstanding: a wine of superior character and style
  3. 85-89 Very good: a wine with special qualities
  4. 80-84 Good: a solid, well-made wine



This project is based on data from WineEnthusiast, a website that has contains numerous wines and their ratings. The data set was provided by a user on Kaggle, who scraped 150,000 reviews of wines rated 80 points or higher from Wine Enthusiast in November 2017. It should be noted that this data came from an American website so it is not a comprehensive list of all top rated wines in the world.

My research questions going into this project are:

  1. What makes one wine better than another?
  2. Is there a way for winemakers to know exactly how to achieve a higher rating, and therefore sell at a higher price?

First, I created a choropleth to be able to easily see where the most wine is produced.

The map above shows the Total Wines produced in each country. From the legend, we can see that the darker the color on the map, the more wine the country generates.  The map shows that the United States produces the most wine with France coming in second. When we hover over the text, we can see exactly how many wines of each classification is produced. This shows us that these two countries need to be investigated further to see why they do far better compared to other countries.

To look further, I created a chart that shows the state or province that the top rated wines come from in their respective countries. By looking at the specific provinces with the highest production we can try to look for similarities and differences between the two regions.


From these graphs, we can see that Bordeaux is the top producer of wine in France and California is the top producer in the United States.  Bordeaux's climate is characterized as very dry except during the summer; and California's main wine producing area, Napa Valley,  also has a dry climate. These results show that winemakers from these areas may have an advantage in producing higher quality wine due to the climate the fruits are being cultivated in.

Next, I performed a text analysis on the descriptions the sommeliers gave for each of the 150,000 wines in the data set.  After filtering the wines based on their ratings, I used the text mining package in R to extract the information.  By looking at the most common words used to describe wines in each category,  we learn the characteristics to emphasize and which to minimize in order to achieve a certain rating


For example, we can see from the chart on the left, the most commonly used term in the descriptions for 'Good" rated wines is 'sweet'.  Alternatively, the most used term in "Classic" rated wines is "black". There is a big difference between something that tastes "black" and something that is "sweet". As a result, we can summarize that wines are more bitter rather than sweet receive a higher rating.

This application is valuable to winemakers because it will help them to have an idea of what characteristics are necessary to attain a certain distinction. The maps also show that wineries in drier climates tend to have better results.  After seeing the results from this data, I would like to further investigate the descriptions provided by the sommeliers to extract the sentiment associated with each word and a text breakdown by country.

Overall,  I enjoyed using R and Shiny to create this visualization and I look forward to investigating further and adding more tools for winemakers. Feel free to check out my application here!

About Author

Marissa Joy

Marissa Joy

Stony Brook applied math and economics graduate turned Data Scientist who enjoys digging deep into data of all types and sizes. She is skilled in data wrangling and data visualization using Python, R, and SQL. Some of her...
View all posts by Marissa Joy >

Related Articles

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