Dear Hannes,

Thank you so much for the kind help.

I will try both methods from you and Jason.

Best regards

Liang

On Wednesday, January 22, 2014 6:29:46 PM UTC+1, Hannes Roest wrote:
>
> Hi Liang 
>
> For easy handling of mzXML, you can also use pyopenms 
>
> import pyopenms 
> exp = pyopenms.MSExperiment() 
> pyopenms.FileHandler().loadExperiment(filepath, exp) 
> for spectrum in exp: 
>   for peak in spectrum: 
>     print peak.getMZ(), peak.getIntensity() 
>
> It is based on the OpenMS package and is available through PyPI: 
> https://pypi.python.org/pypi/pyopenms 
>
> I hope this helps 
>
> Hannes 
>
> On 22 January 2014 17:03, Jason Winget <[email protected] <javascript:>> 
> wrote: 
> > 
> > Hi Liang, this is something I've been working on recently. The peak 
> intensities are compressed, so you need to decompress them to generate a 
> table of peaks and intensities. 
> > You will almost certainly want to do this with a script instead of in 
> Excel. 
> > 
> > For mzXML files, I first extract all scan events, then parse the peaks 
> element as follows (in python, using the base64, struct, and lxml modules): 
> > ---- 
> > line = elem.xpath('mzXML:peaks', namespaces=NS)[0].text 
> > decoded = base64.standard_b64decode(line) 
> > tmp_size = len(decoded) / 8 
> > unpack_format = "!%dd" % tmp_size # This is important. The data is 
> double-double encoded 
> > 
> > idx = 0 
> > mz_list = [] 
> > intensity_list = [] 
> > for val in struct.unpack_from(unpack_format, decoded): 
> >     if(idx%2 == 0): 
> >         mz_list.append(float(val)) 
> >     else: 
> >         itensity_list.append(float(val)) 
> >     idx += 1 
> > ---- 
> > This returns two lists containing the m/z values and intensities, 
> respectively for each scan. 
> > 
> > For mzML, I've found it easier to use the pymzml module for python. Here 
> is some code to get you started with that: 
> > ---- 
> > msrun = pymzml.run.Reader(filepath) 
> > for s in msrun: 
> >     if s['id'] in scans: 
> >         for mz, i in s.peaks: 
> >             print(mz, i) 
> > ---- 
> > Hope this gets you going. 
> > 
> > Best, 
> > Jason 
> > 
> > On Wednesday, January 22, 2014 5:49:36 AM UTC-8, Liang QIAO wrote: 
> >> 
> >> Hi All, 
> >> 
> >> I want to get the intensities of peaks with a specific m/z at different 
> retention times from hundreds of thermo RAW files. 
> >> I have converted a RAW file into a mzxml file, and opened the mzxml 
> file by excel to display the xml table. 
> >> In the table, I found only the lowMz for the peak with lowest m/z, the 
> highMz for the one with highest m/z and the basePeakMz for the most 
> intensive one. 
> >> However, there should be hundreds of peaks according to the peaksCount 
> >> I put here a figure to show the displayed xml table by excel. 
> >> Is there a way to display all the counted peaks with m/z as well as the 
> corresponding intensities at each retention time? 
> >> 
> >> Thank you very much for your help. 
> >> 
> >> Best wishes 
> >> 
> >> Liang 
> >> 
> >> 
> >> 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "spctools-discuss" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to [email protected] <javascript:>. 
> > To post to this group, send email to 
> > [email protected]<javascript:>. 
>
> > Visit this group at http://groups.google.com/group/spctools-discuss. 
> > For more options, visit https://groups.google.com/groups/opt_out. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"spctools-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/spctools-discuss.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to