Class MeanFunction

  • All Implemented Interfaces:
    JepExpressionFunction, JepFunction, org.nfunk.jep.function.PostfixMathCommandI

    public class MeanFunction
    extends Object
    implements JepExpressionFunction
    A JEP function class that adds a mean(string) function to a JEP expression parser. The function will calculate the mean value of the raw data property with the given name. For example: mean('ch1BgMean')

    To be able to use this function it must be registered with the JEP parser and, before the expression is evaluated, a rawbioassay object must be set. For example we can evaluate an expression for every raw data object in a raw bioassay:

    DbControl dc = ...
    RawBioAssay assay = ...
    String expression = "raw('ch1FgMean') - mean('ch1BgMean')";
    RawFunction raw = new RawFunction(assay.getRawDataType());
    MeanFunction mean = new MeanFunction(assay);
    JEP jep = JepUtil.newJep(expression, raw, mean);
    DataResultIterator<RawData> result = 
       assay.getRawData().iterate(dc);
    while (result.hasNext())
    {
       raw.setRawData(result.next());
       double value = jep.getValue();
       // Do something with the value
    }
    result.close();
    
    Version:
    2.0
    Author:
    Nicklas
    See Also:
    Jep
    Last modified
    $Date: 2015-04-20 11:08:18 +0200 (må, 20 apr 2015) $
    • Field Detail

      • means

        private final Map<String,​Float> means
        Holds a cache of the values.
      • numParameters

        private int numParameters
    • Constructor Detail

      • MeanFunction

        public MeanFunction​(DbControl dc)
        Create a new instance of this function working with raw data of the specified raw bio assay.
        Parameters:
        dc - DbControl used in this function