How to fix an mzxmlread error?

15 views (last 30 days)
Shenae
Shenae on 5 Feb 2016
Commented: Anyin Li on 12 Sep 2022
I used the program msconvert from proteowizard to convert my Thermo .raw files to .mzXML files. When I use the mzxmlread command in MATLAB2015b(mzxmlread('data1.mzXML');) in matlab, I get this...
Starting to parse document...
Building mzXML substructure...
Building scan substructure...
Error using typecast
The first input must contain a multiple of 8 elements to convert from int8 (8 bits) to double (64 bits).
Error in mzxmlread>processPeaks (line 699) mzpeaks = swapbytes(typecast(peaks,'double'));
Error in mzxmlread/parseScan (line 555) out.(elementNameScan)(countScan+1).peaks.mz = processPeaks(b64.decode(data),64);
Error in mzxmlread (line 420) parseScan;
  2 Comments
cccc17
cccc17 on 3 Mar 2016
I have the same error. Do you have any solution?
Katie
Katie on 7 Apr 2016
I HAVE THIS ERROR AS WELL.
Anybody? Please?

Sign in to comment.

Answers (3)

Kundai Sachikonye
Kundai Sachikonye on 15 Jun 2017
I had the same problem for a while and stumbled upon a solution. When using MSConvert to convert raw files to mzXML files, set binary precision to 32bit and add "Write index" and "TPP Compatability" as options and ensure that "Use zlib compression" tab is unchecked. Finally, for the filter section, add "Pick Peaking", check "Prefer Vendor" tab and add the appropiate MS Levels you require. After the relatively quick conversion, your file should load into MATLAB without any errors.
  1 Comment
Anyin Li
Anyin Li on 12 Sep 2022
This solved the similar problem I am having

Sign in to comment.


Arthur Goldsipe
Arthur Goldsipe on 8 Apr 2016
Hi,
I believe the mzXML file is invalid. mzxmlread could give a more helpful error message, but the error occurs when the peaks data for a run is invalid. Perhaps msconvert did not correctly encode the data.
-Arthur

Luuk van Oosten
Luuk van Oosten on 11 Apr 2016
Dear Shenae, Katie, cccc17,
The problem might occur due to the fact that your mzXML file is improperly generated, as Arthur Goldspie already remarked.
Note that MATLAB is only able to handle mzXML files that are conform the 2.1 specifications or earlier. Try to generate your mzXML file with an older version and try again... I believe that you can find those versions somewhere over here.
That might solve it.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!