- Course overview
- Search within this course
- Introduction to the Solr API: accessing IMPC data programmatically
- What is Apache Solr?
- Important definitions: query, field, core, document, parameter
- Quiz 2: get yourself familiar with Solr terminology
- What is the difference between an IMPC parameter and a Solr parameter?
- Using simple Solr syntax in your browser
- Output of the simplest request in your browser
- A Python module to access IMPC data: installation and available functions
- Quiz 3: explain Solr request
- Solr query syntax: simplified explanation
- How to use the solr_request function from the impc-api python package
- How to perform a query: q parameter
- Exercise 1: getting familiar with the core
- How to request a limited number of documents: rows parameter
- Exercise 2: requesting three documents
- How to get specific fields: fl parameter
- Exercise 3: selecting specific fields
- Quiz 4: basic Solr parameters
- Filtering data in Solr: narrowing down your results
- How to query a specific field: filter by value
- Exercise 4: filtering by a single field
- How to filter numbers: range search
- Exercise 5: changing the p-value threshold
- How to combine multiple filters: Boolean operators
- Exercise 6: applying multiple filters
- How to exclude data: NOT operator
- Why parentheses are important: combine multiple Boolean operators
- Quiz 5: Boolean operators
- How to handle with null values: exclude empty fields
- Exercise 7: explore null values
- Downloading data: getting large results efficiently
- How to download large dataset effectively: pagination
- How to download the data: batch_solr_request function
- What formats are available for downloading: wt parameter
- Exercise 8: download the data
- What is the difference: JSON vs CSV
- What you need to keep in mind: query responsibly
- Quiz 6: request only necessary data
- Advanced Solr query techniques: faceting and iterating over entities
- Understanding IMPC data: resources and assistance
- Your feedback
The structure of IMPC data: pipeline, procedure, parameter
IMPReSS stands for International Mouse Phenotyping Resource of Standardised Screens. It is a catalogue containing standardised descriptions of the various types of data generated by the IMPC. There are three types of entities in IMPReSS:
- Pipeline: A collection of procedures (experiments) that need to be done on the mice in a defined sequence.
- Procedure: An experiment carried out during a specific week and in the manner defined in the protocol.
- Parameter: A measurement obtained during an experiment.
For example, JAX_001 is a pipeline_stable_id, which consists of several procedures, including an electrocardiogram procedure with the procedure_stable_id IMPC_ECG_003. During this experiment, several values are measured, including the number of signals with the parameter_stable_id IMPC_ECG_001_001.
Continue to the next page to test your learning of the structure of IMPC data.