pymzML
pymzML copied to clipboard
Issue Averaging Two Spectra
I am trying to average together multiple scans into a single summed spectrum, and I'm having issues with the add function. Perhaps I'm using it wrong, but here is an example.
To Reproduce
import pymzml
path = "strep.mzML" msrun = pymzml.run.Reader(path)
spec1 = msrun[1] spec2 = msrun[2]
average_spec = spec1 + spec2
Expected behavior The average_spec is the sum of spec1 and spec2.
Console Output
Traceback (most recent call last):
File "C:/Python/UniDec3/Scripts/MTM/mzml_test.py", line 9, in
Process finished with exit code 1
Desktop (please complete the following information):
- OS: Windows 10
- Version 2.4.7
Additional context I am happy to provide an example file via email. I tried to upload it, but it wouldn't accept files larger than 10 MB.
Hi,
sorry to hear that this does not work for you.
I tried to reproduce your issue and it worked for most of the spectra I was testing, however I saw that it did not work for spectra with too few peaks.
If you could send me the files via a filesharing website of your choice or via mail to [email protected], this would be helpful for debugging.
Also, can you check the length of your centroided peaks like len(spec.peaks("centroided"))
?
Best, Manuel
Hi Manuel, Michael's data can be found here https://www.dropbox.com/s/1hqn7ij2lvw2zo9/strep.mzML?dl=0. Let me know if you don't find time to look into this :) Cheers, .c
Hi,
I think I found the reason and solution for this problem, you can check it out here #244 . As soon as I checked for possible side effect and maybe added another test file with an appropiate test, I'll merge this fix into the dev branch
Best, Manuel