Switch of normalisation in compute-comparison tool

Hi,

I’m trying to use the compute-comparison tool to generate a comparison file from multiple RMA files. It does work when I use this command:

megan/tools/compute-comparison -i *.rma -o compare.megan

but I don’t want to normalise the reads so I tried to use the -n option but that throws an error and the generated comparison file is empty:

megan/tools/compute-comparison -i .rma -o compare.megan -n false -v
ComputeComparison - Computes the comparison of multiple megan, RMA or meganized DAA files
Options:
Input and Output:
–in:
.rma
–out: compare.megan
Options:
–normalize: false
–ignoreUnassignedReads: false
–readAssignmentMode: readCount
–keepOne: false
Other:
–verbose: true
Version MEGAN Ultimate Edition (version 6.17.0, built 7 Aug 2019)
Copyright © 2019 Daniel H. Huson. This program comes with ABSOLUTELY NO WARRANTY.
Computing comparison:
Caught:
java.lang.IllegalArgumentException
at java.base/java.util.concurrent.ArrayBlockingQueue.(ArrayBlockingQueue.java:269)
at java.base/java.util.concurrent.ArrayBlockingQueue.(ArrayBlockingQueue.java:254)
at megan/megan.dialogs.compare.Comparer.computeComparison(Comparer.java:167)
at megan/megan.commands.show.CompareCommand.apply(CompareCommand.java:142)
at megan/megan.tools.ComputeComparison.run(ComputeComparison.java:105)
at megan/megan.tools.ComputeComparison.main(ComputeComparison.java:55)
at megan6u/megan6u.tools.ComputeComparison.main(Unknown Source)
Saving to file: compare.megan
done
Total time: 0s
Peak memory: 0.0 of 10.5G

Is this something you can fix easily or should I use MEGAN itself for generating the file instead?

Cheers,
Nicole

Hi Nicole,

The problem is that you typed .rma, not *.rma

You can see that further below in your post:

–in: .rma

You should see the list of files, not .rma. So please, rerun using *.rma

Unfortunately, the program does not gracefully handle the case in which no readable input files are given (as is the case here). Hence, I have modified the code so that in the next release the program will throw an exception if non-existing or non-readable input files are supplied by the user.
D

Hi Daniel,

yes an error message or a coffee would have helped there :smiley:

Thanks for the fast reply,
Nicole