Skip to content

You are a product manager for a fitness studio and are interested in understanding the current demand for digital fitness classes. You plan to conduct a market analysis in Python to gauge demand and identify potential areas for growth of digital products and services.

The Data

You are provided with a number of CSV files in the "Files/data" folder, which offer international and national-level data on Google Trends keyword searches related to fitness and related products.

workout.csv

ColumnDescription
'month'Month when the data was measured.
'workout_worldwide'Index representing the popularity of the keyword 'workout', on a scale of 0 to 100.

three_keywords.csv

ColumnDescription
'month'Month when the data was measured.
'home_workout_worldwide'Index representing the popularity of the keyword 'home workout', on a scale of 0 to 100.
'gym_workout_worldwide'Index representing the popularity of the keyword 'gym workout', on a scale of 0 to 100.
'home_gym_worldwide'Index representing the popularity of the keyword 'home gym', on a scale of 0 to 100.

workout_geo.csv

ColumnDescription
'country'Country where the data was measured.
'workout_2018_2023'Index representing the popularity of the keyword 'workout' during the 5 year period.

three_keywords_geo.csv

ColumnDescription
'country'Country where the data was measured.
'home_workout_2018_2023'Index representing the popularity of the keyword 'home workout' during the 5 year period.
'gym_workout_2018_2023'Index representing the popularity of the keyword 'gym workout' during the 5 year period.
'home_gym_2018_2023'Index representing the popularity of the keyword 'home gym' during the 5 year period.
# Import the necessary libraries
import pandas as pd
import matplotlib.pyplot as plt
workout_df = pd.read_csv('data/workout.csv')
# Get the row with the highest worldwide workout interest
peak = workout_df[workout_df['workout_worldwide'] == workout_df['workout_worldwide'].max()]

# Extract the year from the 'month' column
peak['year'] = pd.to_datetime(peak['month']).dt.year

# Get the year as a plain value
year_str = str(peak['year'].values[0])
print(year_str)
workout_df['year'] = pd.to_datetime(workout_df['month']).dt.year
plt.figure(figsize=(15,9))
plt.plot (workout_df['month'],workout_df['workout_worldwide'])
# plt.plot (workout_df['year'],workout_df['workout_worldwide'])
plt.xticks(rotation=90)
plt.show()
three_keywords_df = pd.read_csv('data/three_keywords.csv')
# three_keywords_df

plt.plot(three_keywords_df["month"], three_keywords_df["home_workout_worldwide"], label="Home workout")
plt.plot(three_keywords_df["month"], three_keywords_df["gym_workout_worldwide"], label="Gym workout")
plt.plot(three_keywords_df["month"], three_keywords_df["home_gym_worldwide"], label="Home gym")
plt.xticks(rotation=90)
plt.legend()
plt.show()

peak_covid = "home workout"
current = "gym workout"
 df= pd.read_csv("data/workout_geo.csv", index_col = 0)

us = df.loc['United States'].values[0]
aus = df.loc['Australia'].values[0]
jpn = df.loc['Japan'].values[0]

top_country = "United States"
print(max(us,aus,jpn))
df_keywords_geo = pd.read_csv("data/three_keywords_geo.csv", index_col = 0)
print(df_keywords_geo.loc["Philippines", :])
print(df_keywords_geo.loc["Malaysia", :])

home_workout_geo = "Philippines"