Skip to content
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

deepTools invalid literal for int() with base 10: '1.0' #1057

Closed
drpatelh opened this issue Nov 14, 2019 · 3 comments
Closed

deepTools invalid literal for int() with base 10: '1.0' #1057

drpatelh opened this issue Nov 14, 2019 · 3 comments

Comments

@drpatelh
Copy link
Contributor

drpatelh commented Nov 14, 2019

Description of bug:
A clear and concise description of what the bug is.

It appears to be bug specific to Python 3 and not Python 2 when trying to convert a string in the deepTools output to an integer i.e. int('1.0'). Pasting this at the Python prompt gave the same error.

int(float('1.0')) is a possible solution.

MultiQC Error log:

[INFO   ]         multiqc : This is MultiQC v1.7
[INFO   ]         multiqc : Template    : default
[INFO   ]         multiqc : Searching '.'
[INFO   ]         multiqc : Only using modules deeptools
[ERROR  ]         multiqc : Oops! The 'deeptools' MultiQC module broke...
  Please copy the following traceback and report it at https://github.com/ewels/MultiQC/issues
  If possible, please include a log file that triggers the error - the last file found was:
    ./OSMOTIC_STRESS_T0_R1.mLb.clN.plotProfile.tab
============================================================
Module deeptools raised an exception: Traceback (most recent call last):
  File "conda/envs/nf-core-atacseq-1.1.1dev/bin/multiqc", line 440, in multiqc
    output = mod()
  File "conda/envs/nf-core-atacseq-1.1.1dev/lib/python3.7/site-packages/multiqc/modules/deeptools/deeptools.py", line 75, in __init__
    n['plotProfile'] = self.parse_plotProfile()
  File "conda/envs/nf-core-atacseq-1.1.1dev/lib/python3.7/site-packages/multiqc/modules/deeptools/plotProfile.py", line 20, in parse_plotProfile
    parsed_data, bin_labels, converted_bin_labels = self.parsePlotProfileData(f)
  File "conda/envs/nf-core-atacseq-1.1.1dev/lib/python3.7/site-packages/multiqc/modules/deeptools/plotProfile.py", line 70, in parsePlotProfileData
    bins.append(int(col))
ValueError: invalid literal for int() with base 10: '1.0'
============================================================
conda/envs/nf-core-atacseq-1.1.1dev/bin/multiqc:495: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead
  logger.warn("No analysis results found. Cleaning up..")
[WARNING]         multiqc : No analysis results found. Cleaning up..
[INFO   ]         multiqc : MultiQC complete

File that triggers the error:
OSMOTIC_STRESS_T0_R1.mLb.clN.plotProfile.tab
I have included deepTools output files for both plotFingerprint and plotProfile just in case they come in handy!

Please drag and drop (and upload to the GitHub issue) an input file that I can use to replicate the error.
work_dir.tar.gz

MultiQC run details (please complete the following):

  • Command used to run MultiQC: See command.sh in tar archive
  • MultiQC Version: MultiQC v1.7
  • Operating System: Linux
  • Python Version: 3.7.3
  • Method of MultiQC installation: conda

Additional context
Add any other context about the problem here.

@ewels
Copy link
Member

ewels commented Nov 15, 2019

Duplicate of #1011

Thanks for the test files though!

@ewels ewels closed this as completed Nov 15, 2019
@drpatelh
Copy link
Contributor Author

Very welcome 😄

ewels added a commit to MultiQC/test-data that referenced this issue Nov 15, 2019
ewels added a commit that referenced this issue Nov 15, 2019
@ewels
Copy link
Member

ewels commented Nov 15, 2019

Fixed 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants