# How to perform an exploratory data analysis¶

To explore preprocessing, encodings and/or reports without running a machine learning algorithm, the ExploratoryAnalysis instruction should be used. The components in the definitions section are defined in the same manner as for all other instructions (see: How to specify an analysis with YAML, for importing a dataset see How to import data into immuneML).

The instruction consists of a list of analyses to be performed. Each analysis should contain at least a dataset and a report. Optionally, the analysis may also contain an encoding along with labels if applicable. In the example below, two analyses are done:

• my_analysis_1 runs report my_seq_lengths directly on dataset my_dataset

• my_analysis_2 first encodes my_dataset using my_regex_matches before running report my_matches.

definitions:
datasets:
# imported datasets
my_dataset: # user-defined dataset name
format: AIRR
params:
path: path/to/data/

encodings:
my_regex_matches:
MatchedRegex:
motif_filepath: path/to/regex_file.tsv

reports:
my_seq_lengths: SequenceLengthDistribution # reports without parameters
my_matches: Matches

instructions:
my_instruction: # user-defined instruction name
type: ExploratoryAnalysis
analyses:
my_analysis_1: # user-defined analysis name
dataset: my_dataset
report: my_seq_lengths
my_analysis_2:
dataset: my_dataset
encoding: my_regex_matches
report: my_matches


Where the file regex_file.tsv must be a tab-separated file, which may contain the following contents:

id

TRB_regex

1

ACG

2

EDNA

3

DFWG