Interactive Exploratory Data Analysis (EDA) of movies using The Movie Database (TMDB) API. Fetch real-world data on box office, ratings, and more, then explore trends with dynamic, interactive charts directly in a Jupyter Notebook.
- Features
- Technologies
- Requirements
- Installation
- TMDB API Setup
- Usage
- Demo
- Contributing
- License
- Contact
- 📊 Interactive Visualizations: Scatter plots, bar charts, and line graphs with hover details.
- 🔎 Dynamic Filters: Filter by year, genre, popularity, and more using
ipywidgetscontrols. - 📈 Data Insights: Analyze box office trends, rating distributions, and popularity metrics.
- 🔄 Automated Data Pipeline: Fetch, clean, and preprocess data from TMDB with
pandasandrequests.
Why include an API section?
Highlighting API integration shows practical skills in real-world data retrieval and backend communication—qualities recruiters value for data-centric roles.
- Language: Python 3.8+
- Notebook Environment: Jupyter Notebook
- Libraries:
pandasfor data manipulationrequestsfor API callsplotly-expressfor interactive chartsipywidgetsfor user controls
- Python 3.8 or higher
- TMDB account and API key
pippackage manager
# Clone this repository
git clone https://github.com/Vinicius-Mangueira/TMDB-Interactive-Movie-EDA.git
cd TMDB-Interactive-Movie-EDA
# (Optional) Create and activate a virtual environment
python -m venv venv
# Linux/macOS
source venv/bin/activate
# Windows
venv\\Scripts\\activate
# Install dependencies
pip install -r requirements.txt- Sign up for a free account at TMDB.
- Generate an API key under Settings → API.
- Add your API key to the notebook or a
.envfile:
import os
os.environ['TMDB_API_KEY'] = 'YOUR_API_KEY_HERE'Note: Including an API setup section demonstrates your ability to work with external services and configure environments, which recruiters often look for.
-
Launch the Jupyter Notebook:
jupyter notebook Notebooks/TMDB_EDA.ipynb
-
Run all cells in sequence to:
- Download and preprocess data
- Generate interactive visualizations
- Use widgets for custom filtering
Contributions are welcome!
- Fork the repo
- Create a new branch:
git checkout -b feature-name - Commit your changes:
git commit -m 'Add new feature' - Push to your branch:
git push origin feature-name - Open a Pull Request
This project is licensed under the MIT License.
Vinícius Mangueira – GitHub – LinkedIn – [email protected]
