Solução 1

Você identificou os pares dando-lhes o mesmo nome de amostra (Pair_N).

Para cada par, a primeira injeção é sempre a amostra sem adição e a segunda injeção é a com adição.

Você sempre tem uma concentração adicionada de spike de 10.

Cálculo Personalizado

  • Escopo: Pico ou Grupo

  • Tipo: Duplo

  • Fórmula:

    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, "")

Explicação da fórmula:

Parte da equação (destacada)

Descrição

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, "")

Nenhum valor será retornado se Sample_Name não iniciar com "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, "")

Retorna uma lista de picos "correspondentes" em uma determinada lista

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 significa que os picos ou grupos correspondentes são selecionados por respectivos nomes do composto. Então, ele retorna a lista de picos ou grupos com o mesmo nome do composto que o atual

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, "")

Os MatchingPeaks são pesquisados na lista de injeções com o mesmo nome da atual. Aqui podemos identificar os "pares" de injeções.

Aqui temos uma lista de 2 picos ou grupos correspondentes aos 2 que estão presentes nos "pares" de injeções.

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, "")

O último item da lista é selecionado. Aqui é o pico ou grupo em Injeção Com Adição

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, "")

Retorna Compound_Amount na injeção com adição

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, "")

Retorna Compound_Amount na injeção sem adição

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 é a concentração adicionada de spike

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 para ter um resultado em porcentagem