Welcome to the IMPC Data API Workshop repository! This repository is designed to provide all the resources you need to follow along with our workshop (2024-05-20) on building and using data APIs. Below is an overview of the contents of this repository:
-
Exercises
Theexercises
folder contains hands-on practice tasks and correct answers. If you would like to go through the exercises, useimpc_workshop_exercises.ipynb
. If you would like to look at the correct answers, take a look atimpc_workshop_answers.ipynb
. -
Presentations
Thepresentations
folder includes all the slide decks used during the workshop sessions. -
Cheat Sheet
Thecheat_sheet.ipynb
file is a Jupyter Notebook that serves as a quick reference guide for common API tasks and commands.
- Workshop recording on YouTube
- IMPC website
- IMPC SOLR cores documentation
- IMPReSS | International Mouse Phenotyping Resource of Standardised Screens
- GenTaR | The Genome Targeting Repository
- IMPC disease models summary
- IMPC disease associations
- Disease Models Portal
- OMIM | Online Mendelian Inheritance in Man
- Orphanet
Whether you attended the workshop or want to explore the exercises, here is a guide to work locally.
To use the Jupyter notebook with the exercises, you need to set up an environment to run it. We suggest two options:
- Local Installation (More control, but more setup): Install on your machine. This allows ease of access, execution of complex queries, and uses your computational resources, but can be challenging if you haven't used
pip
before. We highly recommend this option. - Using Binder (Easier to set up, but less resources available): A limited computing environment via Binder.
We recommend using Python 3.10
-
Create a virtual environment (optional but recommended):
python3 -m venv my_venv source my_venv/bin/activate
-
Install Jupyter Notebook: You can find the installation instructions here. If you are using a virtual environment, make sure you install Jupyter notebook inside the environment.
-
Clone the repository: Open your terminal and run:
git clone https://github.com/mpi2/impc-data-api-workshop
-
Update pip:
pip install --upgrade pip
-
Install the dependencies:
cd impc-data-api-workshop pip install -r requirements.txt
-
Start Jupyter Notebook:
jupyter notebook
-
This will open a new browser window with the Jupyter interface. On the sidebar, navigate to the exercises directory.
-
Open the
impc_workshop_exercises.ipynb
file.
If you prefer an easier way to interact with the material, try Binder
We advice this approach for preliminary exploration of the material, if you wish to write your own queries we encourage you to attempt a the local setup.
- Navigate to the Binder website.
- Paste the URL of this repository as instructed.
- This will start a Docker container with the dependencies from
requirements.txt
. All you have to do is wait. - Once it is done loading, a new window with a Jupyter notebook session will start.
NOTES:
- Should you wish to save any changes you make to the Jupyter notebooks, follow Binder's instructions.
- Binder has a maximum of simultaneous users per repo, to ensure you can use the material, opt for Installation Option 1.
- Note some of the existing queries in the exercises might not work due to the resource cap from Binder.
Based on the workshop material, we created a Python package called impc_api
. Documentation on how to download, available functions, and usage instructions can be found here.
Happy coding!