-
Notifications
You must be signed in to change notification settings - Fork 603
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No data in VariantEval module #1158
Comments
@ewels it looks like there are plenty of issues to work on at the moment. Do you think you'll have time to work on this one anytime soon? |
I will prioritise everything labelled as Phil |
@ewels I would be happy to (try to) help. Any idea where I can start? I don't exactly have an overview of the code-base 😛 |
I guess I can poke around in the varianteval.py module script. Most likely it's not parsing something correctly. |
Well, I think I've discovered the parsing error. See here: https://github.com/ewels/MultiQC/blob/master/multiqc/modules/gatk/varianteval.py#L108 This code is inside a try-except block, and a I think this could probably be generalized to any keys in the table. The tables basically consist of three types of columns: the first column just says what kind of data it is (e.g. @ewels What do you think we should do about this? |
This isn't really an error as such - it's just the mechanism that the code uses to parse this block of the logs. It keeps trying to parse columns until there are not enough columns (because the table has ended). Then it throws a Do you know why your log file looks so different? I see that the GATK version at the top is One thing that we could / should probably do is skip the report sections if there is no data to find, and possibly raise a warning if we found a VariantEval file but were not able to parse any data from it. Phil |
The version is
Primarily it's because I was not using the standard stratification nor evaluation modules, so the there were different tables in my file, and the tables had different fields. Using the all the standard stratification and evaluation modules rectifies most of the differences. I think it's fair to not try to generalize this, simply because that would be too much work. The one difference that remains is that the key So, if we can change line 108 and line 146, then I'm happy. Although this would break the module for GATK3 users (if they still exist). Alternatively, instead of hard-coding everything, these keys could be entered in a MultiQC config, right? |
Thanks for the clarification @olavurmortensen! I've updated the code so that it looks for I've also added a sentence to the GATK module docs saying that it only works if you use standard stratification & evaluation. Finally, I updated the check for data which almost always passed because of the I hope this is all ok! Let me know if you spot any more problems. Sorry we couldn't get the module to print your data - feel free to open a new issue to generalise this module more in the future if you'd like support. Phil |
Now works with output from @olavurmortensen which was run in a different way. See #1158
Ok, I took another look at your file and felt bad that MultiQC was just ignoring it when it really did look pretty similar. I have refactored the code to be a lot more generous and essentially assume that Please take a look and sanity check all of the numbers and labels if you can 👍 Here's a report using all of the test data, so a mixture of yours and the previously supported formats so that you can see how the numbers line up: multiqc_report.html Shout if there's anything I've missed or messed up.. Phil |
Hey @ewels, sorry for not getting back to you. I tried it out and it works just fine :) |
Great! 👍 |
Description of bug:
I'm using the GATK module to display data from
VariantEval
. The "Variant counts" section just saysError - was not able to plot data
. and the "Compare overlap" section displays an empty table.MultiQC Error log:
File that triggers the error:
variant_eval.table.txt
MultiQC run details (please complete the following):
multiqc .
conda create -n multiqc_varianteval_test -c bioconda -c conda-forge multiqc=1.8
Additional context
I've noticed that there isn't any data in the
varianteval
part of themultiqc_data.json
:The text was updated successfully, but these errors were encountered: