Class MedianRatioNormalization

All Implemented Interfaces:
InteractivePlugin, Plugin, SignalTarget

public class MedianRatioNormalization extends AbstractAnalysisPlugin implements InteractivePlugin, SignalTarget
Version:
2.0
Author:
enell, Nicklas
Last modified
$Date: 2015-05-12 11:27:08 +0200 (ti, 12 maj 2015) $
  • Field Details

  • Constructor Details

    • MedianRatioNormalization

      public MedianRatioNormalization()
  • Method Details

    • supportsConfigurations

      public boolean supportsConfigurations()
      Description copied from class: AbstractPlugin
      Returns TRUE, since that is how the plugins used to work before this method was introduced.
      Specified by:
      supportsConfigurations in interface Plugin
      Overrides:
      supportsConfigurations in class AbstractPlugin
      Returns:
      TRUE or FALSE
    • requiresConfiguration

      public boolean requiresConfiguration()
      Description copied from class: AbstractPlugin
      Returns FALSE, since that is how the plugins used to work before this method was introduced.
      Specified by:
      requiresConfiguration in interface Plugin
      Overrides:
      requiresConfiguration in class AbstractPlugin
      Returns:
      TRUE or FALSE
    • getPermissions

      public Collection<Permissions> getPermissions()
      Request use access to Experiment:s and read access to Job:s.
      Specified by:
      getPermissions in interface Plugin
      Overrides:
      getPermissions in class AbstractPlugin
      Returns:
      A collection of permissions or null to not use permissions
      Since:
      2.0.2
    • run

      public void run(Request request, Response response, ProgressReporter progress)
      Description copied from interface: Plugin
      Run the plugin. If a progress reporter object is passed it is recommended that the plugin makes use of it.
      Specified by:
      run in interface Plugin
      Parameters:
      request - Request object with the command and parameters
      response - Response object in for the plugin to response through
      progress - A ProgressReporter where the plugin can report its progess, can be null
    • isInContext

      public String isInContext(GuiContext context, Object item)
      Description copied from class: AbstractAnalysisPlugin
      Check that the item is a bioassayset/derived bioassay and that the logged in user has permission to use the current item.
      Specified by:
      isInContext in interface InteractivePlugin
      Overrides:
      isInContext in class AbstractAnalysisPlugin
      Parameters:
      context - Current guicontext
      item - The item to check.
      Returns:
      null if the item is a valid item, an error message otherwise
    • getRequestInformation

      public RequestInformation getRequestInformation(GuiContext context, String command) throws BaseException
      Description copied from interface: InteractivePlugin
      This method will return the RequestInformation for a given command, i.e. the list of parameters and some nice help text.
      Specified by:
      getRequestInformation in interface InteractivePlugin
      Parameters:
      context - The current context of the client application, it is one of the values found in set returned by InteractivePlugin.getGuiContexts()
      command - The command
      Returns:
      The RequestInformation for the command
      Throws:
      BaseException - if there is an error
    • configure

      public void configure(GuiContext context, Request request, Response response)
      Description copied from interface: InteractivePlugin
      Configure the plugin. Hopefully the client is supplying values for the parameters specified by InteractivePlugin.getRequestInformation(GuiContext, String).
      Specified by:
      configure in interface InteractivePlugin
      Parameters:
      context - The current context of the client application, it is one of the values found in set returned by InteractivePlugin.getGuiContexts()
      request - Request object with the command and parameters
      response - Response object in for the plugin to response through
    • getSignalHandler

      public SignalHandler getSignalHandler()
      Description copied from interface: SignalTarget
      Get the signal handler that is handling signals on behalf of this object. Multiple invokations of this method may receive the same or different objects. Null may be returned if, for some reason, the current object instance doesn't want to receive signals. Returning null is the same as not implementing this interface.
      Specified by:
      getSignalHandler in interface SignalTarget
      Returns:
      A SignalHandler object, or null if the current instance doesn't support signals
    • normalize1ch

      private BioAssaySet normalize1ch(DbControl dc, BioAssaySet source, Job job, float minIntensity, float lowExclude, float highExclude, ProgressReporter progress)
      Normalise the source bioassay set using MEDIAN-RATIO normalization.
      Parameters:
      dc - The DbControl to use for database access
      source - The source bioassay set that is going to be normalized
      job - The job in which the normalization is done.
      minIntensity - All spots which have a lower intensity value in either channel will be filtered out
      lowExclude - A percentage of the spots with lowest ratio that are excuded in the median calculation
      highExclude - A percentage of the spots with highest ratio that are excluded in the median calculation
      progress - Progress reporter for the caller to keep track of the plugin's progress. Null is allowed.
      Returns:
      The normalized bioassayset
      Since:
      2.7, 3.2.4 (removed scale parameter)
    • normalize

      public BioAssaySet normalize(DbControl dc, BioAssaySet source, Job job, float minIntensity, float lowExclude, float highExclude, int blockGroupSize, ProgressReporter progress)
      Normalise the source bioassay set using MEDIAN-RATIO normalization. NOTE! This normalization method only works with 2-channel data.
      Parameters:
      dc - The DbControl to use for database access
      source - The source bioassay set that is going to be normalized
      job - The job that is doing the normalization, or null
      minIntensity - All spots which have a lower intensity value in either channel will be filtered out
      lowExclude - A percentage of the spots with lowest ratio that are excuded in the median calculation
      highExclude - A percentage of the spots with highest ratio that are excluded in the median calculation
      progress - Progress reporter for the caller to keep track of the plugin's progress. Null is allowed.
      Returns:
      The normalized bioassayset
      Since:
      2.5; This method was removed in 2.7.0 by accident, added in 2.7.2 again
    • getConfigureJobParameters

      private RequestInformation getConfigureJobParameters()
    • median

      private float median(float[] sortedArray, int first, int last)
    • median

      private double median(List<MedianRatioNormalization.SpotData> data)