Adding Analyses
There is one sample analysis given in analyses/rq1.py
. This relies on the sample query given in boa/queries/rq1.boa
and makes use of de-duplication, which relies (indirectly) on the query given in boa/queries/hashes.boa
. This analysis will generate a single result, the table in tables/kotlin/rq1.tex
.
The steps to add a new analysis are as follows:
- Create a new Boa query (e.g.,
foo.boa
):- Store the file in
boa/queries/
- note you can create sub-folders here if you want. - Add any missing common snippets into
boa/snippets/
. - Add the query into the
study-config.json
. - Repeat Step 1 as many times as necessary.
- Store the file in
- Create a new Python script to analyze the data (e.g.,
foo.py
) in theanalyses/
directory. - Add a new entry to the
study-config.json
in theanalyses
object.- The name of the entry is the script filename (e.g.,
foo.py
, without theanalyses/
prefix). - Add an
input
key, that is an array of CSV filenames that the analysis depends on.
- The name of the entry is the script filename (e.g.,
Once this is done, you should be able to run make foo
(the target is the name of the script, without the file extension) to run the analysis task, or run make analysis
to run all analysis tasks.
Analyses can be disabled by setting the disabled
key to true. This will prevent the analysis from being run by make analysis
, but will still allow make foo
.