Picking the correct peak failing in ~50% of my injections

support
Picking the correct peak failing in ~50% of my injections sophia  2025-07-07 13:04
 

Fairly new to Skyline. I am trying to use it to analyze a large metabolomics dataset. I have RT windows for my analytes set to be pretty tight, like 0.1 min. In roughly half of my injections, Skyline is choosing the wrong peak as the analyte. Screenshots below as an example -- in one, you can see it's picking the peak that agrees with the explicit RT of 4.7 min, and in the other, you can see it's picking a peak nearby at 4.5 min, which has a lower intensity and a higher ppm error, even though the 4.7 min (correct) peak is right there.

Additionally, in other cases, the integration doesn't seem catch all of the peak, or vice versa, not over-integrate outside the peak. It seems like the recognition of where the peak ends is not very good?

I'm having to manually adjust the assignment and integration in individual injections, which is simply not scaleable. I'm not sure why it's performing this way, especially with a tight RT window set, so I'm wondering if there are some parameters in Skyline that I'm unaware of that would make it less error-prone?

Operating system: OS Sequoia 15.5 (24F74)
Skyline version: 64-bit 24.1.0.199

It seems very similar to the issue reported here (https://skyline.ms/announcements/home/support/thread.view?entityId=9a0b237b-a72c-102f-a8bb-da20258202b3&_docid=thread%3A9a0b237b-a72c-102f-a8bb-da20258202b3) -- should this have been resolved in my version of Skyline?

 
 
Nick Shulman responded:  2025-07-07 13:46
Can you send us your Skyline document?

In Skyline you can use the menu item:
File > Share
to create a .zip file containing your Skyline document and supporting files including extracted chromatograms.

The Share Document dialog also gives you the option of including the raw data, which would be helpful in this case.

Files which are less than 50MB can be attached to these support requests.
You can always upload larger files here:
https://skyline.ms/files.url

I am not sure why Skyline would be picking that peak which does not actually overlap with the Explicit Retention Time.
Usually, when people have specified an Explicit Retention Time the complaint is the opposite: Skyline will always choose a detected peak which overlaps with the Explicit Retention Time, no matter how low quality the peak is on other dimensions.

If you want to learn more about why Skyline chose a particular peak, the Candidate Peaks window is useful. You can get to that window with the "View > Live Reports > Candidate Peaks". That window will show you the peaks that Skyline detected and how they scored.

After we see your Skyline document we will be able to give you more information about why Skyline is doing what it is doing.
-- Nick
 
sophia responded:  2025-07-07 13:56
Thank you for taking a look.

I've uploaded the file to linked location, filename: HILIC-W44-1-2_2ndpass.sky.zip
 
Nick Shulman responded:  2025-07-07 14:15
Thank you for uploading that Skyline document.

Can you tell me which molecule and replicate you were looking at in your screenshots?
-- Nick
 
sophia responded:  2025-07-08 05:48
Choline_light

The screenshot with the wrong assignment came from sample I5_pos
An example of the correct assignment is sample H7_pos
 
Nick Shulman responded:  2025-07-08 10:26
I think you might have set the "Explicit Retention Time" after already having imported chromatograms.
If you make a change like that which affects Skyline's opinion of the peaks that it has detected, you often need to use either the "Rescore" or "Reimport" button on the "Edit > Manage Results" dialog.

By the way, when you collect data for each sample in multiple injections like you have in this document where each sample has a "pos" and "neg" file, it works better if you tell Skyline to put the two files in the same Replicate.
When you do "File > Import > Results" the first window asks you how to organize multiple injection files as replicates.
-- Nick
 
sophia responded:  2025-07-08 11:34
Thanks. I re-imported it, but I'm still seeing issues like this one (same analyte as before). I'm not sure why it's picking the other peak when the RT set is closer to the apex of the other, correct peak
 
Nick Shulman responded:  2025-07-08 11:42
Can you send me the file for that Replicate that is "079_Week44-SP1-Plate02_sample_I5_pos.mzML"?
You can upload it here:
https://skyline.ms/files.url
-- Nick
 
sophia responded:  2025-07-08 11:53
Uploaded 079_Week44-SP1-Plate02_sample_I5_pos.mzML.zip
 
sophia responded:  2025-07-08 12:13
I am not sure re-importing it actually changed anything. The R^2s of my curves are all exactly the same as they were before I re-imported.
 
Nick Shulman responded:  2025-07-08 12:38
Thank you for uploading that .mzML file.
I see that Skyline does not detect any peaks for that molecule when I reimport that .mzML file.
The reason for this is that the Explicit Retention Time window is 0.1 minutes.
The Explicit Retention Time Window constrains where Skyline can detect peaks.
Skyline did not find any peaks within 0.1 minutes of 4.7.
If you change that Explicit Retention Time window value to a larger number such as 0.5, then Skyline will detect a peak.
I am not sure exactly what number Skyline is looking at when it decides that the peak it does detect is more than 0.1 minutes away from 4.7.
-- Nick
 
sophia responded:  2025-07-10 07:24
Thanks, Nick! I have widened it for this analyte, and it looks better.

I am still seeing other analytes like this, though, where it's not picking the right peak. I can see the peak at 3.3 min with a low ppm error, and it's picking something quite far away with a high ppm error, even though I have it set to 3.3 min with a RT window of 0.1 min.

You said, "I am not sure exactly what number Skyline is looking at when it decides that the peak it does detect is more than 0.1 minutes away from 4.7."
Does this mean you don't understand what is causing this behavior?
 
sophia responded:  2025-07-10 07:27
I am also seeing a lot of this, where it's clearly not integrating the whole peak. Is there any way to fix this apart from going through individually adjusting the integration? I simply cannot do that for a huge dataset like this, it will literally take me days
 
sophia responded:  2025-07-10 07:33
Why is this peak being picked when it's clearly just not in the sample? This is outside my RT window, and also high ppm error.
 
sophia responded:  2025-07-10 08:52
Another example -- why is it not picking the peak within the RT window that is obviously correct?
 
Nick Shulman responded:  2025-07-10 09:01
Can you upload your Skyline document again?
In Skyline you can use the menu item:
File > Share
to create a .zip file containing your Skyline document and supporting files including extracted chromatograms.

The Share Document dialog gives you the option to include the raw (or mzML) files.
For peak picking bugs like this, it would be helpful if you could send us the raw files.

You can upload the zip file here:
https://skyline.ms/files.url
-- Nick
 
sophia responded:  2025-07-10 09:51
Uploaded HILIC-W44-1-2_reimport.zip
 
Nick Shulman responded:  2025-07-10 10:35
The .zip file that you uploaded is missing a few important things like the .skyd file.
Can you try creating it again?
-- Nick
 
sophia responded:  2025-07-10 11:34
Sorry about that.

Uploaded HILIC-W44-1-2_reimport.sky
 
Nick Shulman responded:  2025-07-10 13:18
In that Screenshot 2025-07-10 at 10.22.55 AM.png image, the peak was chosen by the user.
You can tell that because there is a little bit of purple visible on the graph. The purple rectangle shows where Skyline originally placed the peak boundaries before the user moved them.
You can hide/show the purple shaded rectangle by right-clicking on the chromatogram graph and choosing "Original Peak".

If you want to discard all of the manual peak adjustments that you may have done you can use the "Refine > Reintegrate" menu item.
On the Reintegrate dialog, check the checkbox that says "Overwrite manual integration".
After you OK the Reintegrate dialog, Skyline will move all the peak boundaries back to what Skyline would have chosen immediately after importing results.

When you tell Skyline to reimport results using the "Reimport" button on the Manage Results dialog, Skyline preserves all manually adjusted peak boundaries. So, if you want to get back to a clean set of peak boundaries chosen by Skyline you should use the "Overwrite manual integration" checkbox on the Reintegrate dialog.

Let me know if you see any incorrectly chosen peaks after telling Skyline to reintegrate.
It would be more helpful if you could take screenshots of the entire Skyline window so I can see which molecule and replicate you have selected.
-- Nick
 
sophia responded:  2025-07-11 07:09
Ok, thanks. This seems to have greatly improved it. I inherited this Skyline file and I did not realize there were all these manual integrations made.

However, I am still seeing instances where it's not picking the correct peak, or not integrating the full peak to my eye. See examples below. I am unclear why it's sometimes selecting a peak with a high ppm error as the correct peak. In my transition settings, I have an ion match tolerance of 25 ppm, but sometimes the peak it's picking has a higher ppm error than that. In that case, I want it to disregard that peak, or choose the other peak in the RT window range. Why isn't it doing that?

Attached examples of incompletely integrated peaks or incorrectly chosen peaks.

I uploaded my file HILIC-W44-1-2_reimport_original_reintegrated.sky.zip