Hi all! I am new to nextflow so I would appreciate...
# rnaseq
a
Hi all! I am new to nextflow so I would appreciate some guidance. I installed nextflow following the instructions and I am testing the rnaseq pipeline as follows:
Copy code
nextflow run nf-core/rnaseq -profile test,singularity --outdir ../results/
The test finished successfully but I got a couple warnings that I don't understand. First, I got a warning about multiple config files and parameters. > WARN: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Multiple config files detected! > Please provide pipeline parameters via the CLI or Nextflow '-params-file' option. > Custom config files including those provided by the '-c' Nextflow option can be > used to provide any configuration except for parameters. > > Docs: https://nf-co.re/usage/configuration#custom-configuration-files > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ I made a custom config file called nextflow.config in the same directory I ran the test command. I didn't create any other config files but I did notice from the nextflow.log there is an additional config file in this directory:
~/.nextflow/assets/nf-core/rnaseq/nextflow.config
. I think this is causing the multiple config files warning. This base config has a params section which I think is what the other warning is referencing? Should I remove the params section of the config since it seems like the rnaseq pipeline doesn't like the parameter behavior? I am planning on making my own parameter file to include specific reference data. I also got these warnings farther down: > WARN: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Both '--gtf' and '--gff' parameters have been provided. > Using GTF file as priority. > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > WARN: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > '--transcript_fasta' parameter has been provided. > Make sure transcript names in this file match those in the GFF/GTF file. > > Please see: > https://github.com/nf-core/rnaseq/issues/753 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ But I couldn't find any of these parmeters in the above config file. Is there another default params file it is locating? I want to make sure I'm using the correct references. Thank you!!! šŸ™‚
t
Have a look at the documentation regarding config files: •
~/.nextflow/assets/nf-core/rnaseq/nextflow.config
is part of the pipeline code (automagically downloaded) -- you can look, but don't touch it. This is referred to as "3. The config file in the project directory". • The
nextflow.config
you created in the launch directory is referred to under 4. While this is legit, it probably does cause the warning, and I don't consider it best practice, if nothing else because it is not apparent from the launch command that this file is influencing the pipeline execution. You might share this command with others (e.g. here to ask for help) and not "tell the whole truth", or you might use it elsewhere and forget to copy the
nextflow.config
, resulting in surprising differences. There are two ways to explicitly use a configuraton (most likely you'll need something to tell the pipeline about your system), with
-profile <profile name>
, and with
-c /path/to/my.config
. The former requires that you either have a public config or somehow link the pipeline to your own profile (you can do that if you download and install the pipeline with tools, or you can use the `--custom_config_base` parameter to point to your own profile database). The latter (
-c
, see 5. in the docs) just requires providing the name of your config file (I recommend giving it a descriptive name, e.g.
mycluster.config
, or if use to change a specific process,
<name of process>.config
), but it should not contain any parameters (i.e. a
params
section), because those might be overwritten due to the way this integrates with the other (built-in) configurations. Instead make a JSON or YAML file with all your parameters (that stay the same, so it makes sense to have them in a file instead of on the command line) and use that with
-params-file
(see 6. in the docs). Regarding the other warnings: •
Both '--gtf' and '--gff' parameters have been provided. Using GTF file as priority.
This pretty much says it all. The
--gff
only exists so you can provide a GFF if that's all you have. If you have a GTF (with the same content), use that and lose the
--gff
. •
'--transcript_fasta' parameter has been provided. Make sure transcript names in this file match those in the GFF/GTF file.
That is also fairly self-explanatory. If you have a genome FASTA and a GTF (the minimum reference files needed for rnaseq, everything else can be created from these), you have all the information to create the transcript FASTA, and this will be automatically done for you (if needed, which is the case by default). You can speed things up a bit but providing that file (e.g. from a prior run), but then it is your responsibility to make sure that it is compatible with the other files you provide (in particular, the genome and GTF). If you are OK with that, you can just ignore the warning. The reason you are getting these in your test run is that the the
test
profile defines all of these parameters (plus some more). If you look at the profiles section of
~/.nextflow/assets/nf-core/rnaseq/nextflow.config
under
test
, it pulls in
~/.nextflow/assets/nf-core/rnaseq/conf/test.config
, which contains all of these. To be honest, I don't know why it contains both
--gtf
and
--gff
, at least that warning seems avoidable. The one about the transcript FASTA at least speeds up the test (provided the download is faster than generating the file).
a
Okay, great. Thank you so much for this information! Makes sense šŸ™‚
šŸ‘ 1