解决方案 1

您通过为其提供相同的样品名称识别出对 (Pair_N)。

对于每个对,第一个进样一直是未加标样品,而第二个进样是加标样品。

您的加标增加浓度一直是 10。

自定义计算

  • 范围:“峰或组”

  • 类型:“Double”

  • 公式:

    IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName(Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName(Sample_Name)).First().Compound_Amount)/10*100, "")

公式说明:

公式部分(高亮显示)

说明

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

如果 Sample_Name 不以 "Pair" 开始,则不会返回值。

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

在给定列表中返回“匹配”峰列表

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

MatchOption.Compound 意味着匹配峰或组是按照其化合物名称选择的。所以,其返回的峰或组列表的化合物名称与当前的化合物名称是相同的

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

MatchingPeaks 是在名称与当前名称相同的进样列表中搜索的。我们识别出进样“对”。

我们有 2 个与进样对中的峰或组相对应的 2 个峰或组列表。

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

选择了列表中的最后一项。这是加标进样中的峰或组

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

返回加标进样中的 Compound_Amount

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

返回未加标进样中的 Compound_Amount

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

10 是加标增加浓度

IF(Sample_Name like "Pair*", (AllMatchingPeaksAndGroups( MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).Last().Compound_Amount - AllMatchingPeaksAndGroups(MatchOption.Compound, CurrentSequence.AllInjectionsBySampleName( Sample_Name)).First().Compound_Amount)/10*100, "")

*100 来得出百分比结果