The basic idea of analyzing the Zomato dataset is to get a fair idea about the factors affecting the establishment of different types of restaurants at different places in Bengaluru. This Zomato data aims at analyzing demography of the location. Most importantly it will help new restaurants in deciding their theme, menus, cuisine, cost, etc for a particular location. It also aims at finding similarity between neighborhoods of Bengaluru on the basis of food.
Observations on the following are made:
- Top restaurant chains in Bangaluru
- How does the price differ between restaurants that accept online orders and those that don't?
- How many restaurants offer table reservations compared to those that do not?
- Types of restaurants available
- Top-rated restaurants
- Restaurants located at various locations around Bangalore
- Approximate cost for 2 people
- How does the vote on restaurants accepting online orders compare to those refusing to accept them?
- In what restaurant does the most costly rate for two people exist? What is the dish involved? The most popular dish to eat there?
- Top ten most expensive and cheapest restaurants, based on an estimate for two people
- Restaurants under 500 (budget hotels)
- Budget-friendly restaurants with rating >4
- Overall number of restaurants that have ratings >4 and are under budget (less than 500)
- Hotels at various locations with affordable rates
- Foodie's hotspots
- Heatmap of North Indian and South Indian restaurants
- Chains with the most popularity for casual dining
- Favorite dishes in various cuisines represented by a word cloud
The dataset contains 17 columns as shown below:
- url - url of the restaurant in the zomato website
- address - address of the restaurant in Bengaluru
- name - name of the restaurant
- online_order - whether online ordering is available in the restaurant or not
- book_table - table booking option available or not
- rate - overall rating of the restaurant out of 5
- votes - total number of rating for the restaurant as of the above mentioned date
- phone - phone number of the restaurant
- location - neighborhood in which the restaurant is located
- rest_type - restaurant type
- dish_liked - dishes people liked in the restaurant
- cuisines - food styles, separated by comma
- approx_cost(for two people) - approximate cost of meal for two people
- reviews_list - list of tuples containing reviews for the restaurant
- menu_item - list of menus available in the restaurant
- listed_in(type) - type of meal
- listed_in(city) - neighborhood in which the restaurant is listed
- Python 3.x
- Jupyter Notebook
- Required libraries:
- pandas
- numpy
- plotly
- seaborn
- matplotlib
This project uses a variety of analytical methods, including clustering, regression analysis, and heatmap generation, to explore the relationships between restaurant types, costs, ratings, and location data. These methods were chosen to gain a deeper understanding of how demographic factors affect restaurant success.
Work flow of process:
- Data Collection
- Data Cleaning
- Performing EDA
- Performing Geospatial Analysis
- Performing Sentiment Analysis
- The Dataset “ZOMATO BANGALORE RESTAURANTS” is publicly available on Kaggle website with 51,717 records and 17 attributes as shown under the dataset section.
- This is an essential step to perform before creating a visualization.
- Clean, consistent data will be much easier to visualize.
- As a result, missing values are filled, data are filtered accordingly, and inappropriate data are removed.
- There are different types of charts Bar, Pie, Line, Scatter Plot, Column chart etc. which can visually present the data in a more understandable way.
- Below bar chart shows the most famous restaurant chains in Bangalore with number of outlets.
- The following pie chart shows the percentage of online orders accepted by restaurants.
- The below figure represents the bar chart for different types of restaurants.
- Bar graph of different varieties of cuisines in Bangalore.
- Below scatter plot with X axis denotes the ratings of the restaurants and Y axis denotes the approximate cost for 2 people.
- Box plot depicting the price difference between restaurants that accept online orders and those that do not
- Geospatial Analysis is useful for locating the geographical area in a particular region.
- For locating the restaurants in geographical map, we need latitudes, longitudes and count of restaurants.
- Extract the "Latitude" and "Longitude" w.r.t. different Locations using Python's Geopy library.
- Generate a "BaseMap" of Bangalore using Python's Folium library.
- Plot a HeatMap based on variety of use cases with the help of Python's Folium "HeatMap" Plugins.
- The heatmap below depicts the clutter of restaurants in Bengaluru.
- Here are the Wordclouds developed using the built-in function in python called “WordCloud” for 9 different types of restaurants where customers left feedback.
- To generate the below pictured wordclouds using Python, feedbacks are preprocessed, null values are dropped and all characters and spaces are removed except alphabets.
- Jupyter Notebook is used as IDE.
- Among the Python libraries, Pandas and NumPy are used for handling data, preprocessing, and mathematical operations, respectively.
- Plotly, Seaborn, and Matplotlib are used for visualizing plots.
For more details, please go through the Jupyter Notebook attached above.
- Top Restaurant Chains: Cafe Coffee Day dominates the restaurant chain landscape, followed by Onesta and Empire.
- Online Orders: 64.4% of restaurants accept online orders, while 35.6% do not, reflecting a trend toward convenience.
- Cuisine Trends: The most common cuisines in Bengaluru are North Indian, Chinese, and South Indian, with North Indian cuisine showing a significant influence.
- Affordable Restaurants: The majority of restaurants in Bengaluru are priced under ₹1000, making dining relatively affordable across the city.
- Restaurant Hotspots: BTM, HSR, and Koramangala 5th Block have the highest concentration of restaurants. BTM alone hosts more than 4000 restaurants.
- Geographic Distribution: Most eateries are located in the central areas of Bengaluru, with the number of restaurants decreasing as you move further from the city center. This information could be useful for new restaurateurs looking to identify prime locations for opening new establishments.
- Cafe Coffee Day dominates the restaurant chain landscape followed by Onesta and then Empire.
- Online orders are accepted by 64.4% of restaurants, whereas 35.6% of restaurants do not accept them.
- The city of Bangalore is known as a high-tech hub of India, and people who live a busy and modern life are inclined to choose Quick Bites.
- The most common cuisines are North Indian, Chinese, and South Indian. Bangalore is therefore influenced more by the cultures of the north than those of the south.
- Having reviewed the above scatterplot, we can conclude that most of the highest-rated restaurants accept online orders and are budget-friendly as well.
- In the box plot, it can be seen that there is a discrepancy between the median number of votes for both categories. The Zomato application gives customers the option to rate restaurants after they've ordered through it. This will lead to more votes for the restaurants accepting online orders.
- The majority of the restaurants are priced under 1000, which means they are affordable and few are luxurious.
- The most no. of eateries are found in BTM, HSR, and Koranmangala 5th block. BTM dominates the section by having more than 4000 restaurants.
- It is evident that eateries are primarily located in the central Bangalore region. As we get farther from the center of the city, the number of restaurants decreases. Therefore, prospective restaurateurs can consult this to identify suitable places for their business.
Check out the notebook above to learn more