Trying to determine %Recovery with Custom Fields

Hello!
I'm new to custom fields and have been trying my best to reverse calculate based on what my predecessors at my company have done. We are trying to determine a %recovery based on amounts obtained. We have a linear regression which gives us an amounts value for our 5 RSD standards and control standards. Want to determine %Recovery based on these amounts. Currently this is the formulas I have been working with:

Name                                            Calc
A_Bracket_Std_EDTA                   C1%.%.%(Amount)
B_Avg_Std_EDTA                         S101.%.%.AVE(Amount)
C_Percent_Recovery_EDTA        (A_Bracket_Std_EDTA/B_Avg_Std_EDTA)*100 

and at the end to show pass/fail
D_Percent_Agreem_Check_Crit   
RANGE([C_Percent_Recovery_EDTA_Cont],98.0, 102.0)

I feel that I have something incorrect in the A or B function but I unsure what that would be.

Any help would be great!

Answers

  • Are you getting the correct values for those custom fields when you compare with using Excel or a calculator? Are all the custom fields generating results or only some of them, which custom field is causing the issue?
  • I'm not getting any results (Column/row is blank) based on those custom fields. Since D relies on C and C relies on A and B it makes sense. I'm just not sure why I'm not getting any results for the first two custom fields. These fields worked if I was doing the same thing for Peak area so I thought I would just substitute AVE(Area) for AVE(amount). Unfortunately, no luck. 
  • Thanks for that. First, make sure you have the Summarize Custom Fields function as the last line in the sample set, and the processing for this row is set to Normal and the Label Reference for the row is blank. This function is required to calculate any summary functions such as AVE, MIN, PROD etc. I presume your search order is Result Set Only for the CFs? The other options make it very tricky for summary CFs to work correctly.
    Next, i would swap around the names of the CFs as your third one is asking Empower to divide an intersample CF with an intersample summary CF, the result of which doesnt exist until Empower reaches the Summarize Custom Fields line, where it travels back up to the top of the sample set and searches for a label called S101, and proceeds to average peak amounts for all injections with this label. Empower processes sample sets line by line, and at line labelled C1..etc, it doesnt yet have the average amount result, therefore it cannot execute your first custom field. Change the name of your second CF to A_avr_std_EDTA and your first CF to B_bracket_std_EDTA.
    Then change the formula of the third CF to:
    (B_bracket_std_EDTA*100)/A_avr_std_EDTA but you can still call it C_percentrecovery_EDTA.
    Be aware that your 4th CF wont include any values of 98.0. RANGE in Empower means GT X and LTE Y. For example RANGE(Area,1000,10000) will return true for any areas greater than 1000 and less than or equal to 10000. If you want your 4th CF to work you need to tell Empower to round your range values to 1 decimal place and subtract 0.1 from your X value in order for Empower to include all values between 98.0 and 102.0, so values from as low as 97.95 up to 102.04. Change the Bool formula to:

    RANGE(ROUND(C_percentrecovery_EDTA,-1),97.0,102.0)

    Hope this helps.

  • I would love to say that I did, but it doesn't really. Changing the names wouldn't really do much if the formulas aren't correct. These exact functions work just fine if I was trying to calculate %recovery based off of peak area. We have used them in the past with great success. However, as soon as I try to use an amounts result nothing is populated. Here is our sequence. Working standards and control standards have an amount calculated off of the linear curve. Its those amounts I'm tryin to average for working standards and obtain % recovery for controls based off the avg working std amount.   
  • That's very strange, I created similar CFs in a test project using the same sequence of standards and controls etc and I got values for them. The only differences I see is I didn't use % for the channel part of the syntax, so S101.%..AVE(Amount) plus I didn't specify for controls amount like you did in your first CF, I had 3 CFs, first one was S101.%..AVE(Amount), second was (Amount*100)/Average_Amount (which will include amounts for control samples) and then RANGE(Second_CF,98,102), and it worked out fine for me.

    Are you getting any amounts at all for the 5 working standards? Maybe double check your processing method and component editor that names are spelled correctly, the correct processing method was used to calculate amount, you have the right search order (Result Set Only). It is possible to do since I did it, so it must be something small that's blocking your progress.

  • I obtain accurate amount values for both working standards and controls. Everything is labeled in the component editor appropriately and works fine and they way I want if I'm using peak area, however, there seems to be a disconnect when trying to use amounts. I tried S101.%..AVE(Amount) and (Amount*100)/(1st CF). Neither generated any data. I feel I may be at a loss and just have to hand calculate... 
  • What way are your standards averaged in the processing method? I notice you have Level 1 to 4, do you average by None, Amount or Level?
  • Change the Sample Type for the 5 Working Standards to Unknown and not Standard, as you don't need these to be standards since you are treating them as unknowns by using the standard curve generated from the 4 EDTA standards to quantify the amounts in the working standards. Then you should get a value for average amount. If that doesn't work, I don't know what to suggest, it worked fine for me that way.
  • Unfortunately that didn't work either. Still no data generated. Thank you very much for all of your help though.  
  • The previously mentioned change of the 5 WS injections should have fixed the problem. A few things you may want to verify as they may affect the amounts being generated.

    #1 Your std curve is generated appropriately.
    #2 The processing method used for calibration and quantitation is the exact same method for all injections.
    #3 When processing, you flag the calibrate and quantitate drop down and check box.
    #4 The amounts are entered into the component editor in the sample set, not the PM.
    #5 Each level in the component editor is spelled exactly as it is in the PM and exactly the same for each line in the component editor.

    I realize these may seem obvious, but they are the critical pieces needed to generate an amount.

  • Just to add, if you are getting accurate amounts for the 5 working standards and the controls, then there isn't an issue with amount. The issue is in the CF used to average them, so S101.%..AVE(Amount). This is the only source of error left- are you absolutely sure the label is identical to the formula? is it S101 and not S1O1 (the letter O)? Is there a gap in the label somewhere?

    Do you process sample sets using Result Set Only? Result Set First and Outside First give strange values when using intersample CFS. Is there enough tablespace left in the project? Is the Summarize Custom Fields set to Normal processing and nothing in the label reference? The only thing it could be is something in that formula. if you can get an average value for amounts using a report method, you should be able to get it with that CF too.

  • I am getting accurate amounts in the report method for working and control standards and the working average just fine. I am using Result Set Only, there is plenty of table space left in the project, Summarize custom field is set to normal. However these custom field formulas don't work in my report method. I just have empty columns.
  • Is it just the report method that isn't showing any entries or is it still blank in the result set when you cycle through all the injections? If there is a value for Average Area in the result set but not the report, then the wrong custom field was inserted into the report. Or the report could be corrupt, test a new table and insert the average std CF and see if it works.

  • Once in a while, the issue is with the report method. Are you seeing the blank fields populated in result set review?