-
Notifications
You must be signed in to change notification settings - Fork 95
Description
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
average_spec = spec1 + spec2
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 505, in add
for mz, i in other_spec.peaks("reprofiled"):
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 1046, in peaks
self._peak_dict["reprofiled"] = self._reprofile_Peaks()
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 1202, in _reprofile_Peaks
for mz, i in self.peaks("centroided"):
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 1044, in peaks
self._peak_dict["centroided"] = self._centroid_peaks()
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 1158, in _centroid_peaks
i_array = [i for mz, i in self.peaks("reprofiled")]
File "C:\intelpython3\lib\site-packages\pymzml\spec.py", line 1057, in peaks
peaks = list(self._peak_dict[peak_type].items())
AttributeError: 'numpy.ndarray' object has no attribute 'items'
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.