Class ExpressionExperimentPlatformSwitchService

java.lang.Object
ubic.gemma.core.loader.expression.ExpressionExperimentPlatformSwitchService

@Service public class ExpressionExperimentPlatformSwitchService extends Object
Switch an expression experiment from one array design to another. This is valuable when the EE uses more than on AD, and a merged AD exists. The following steps are needed:
  • Delete old analyses of this experiment and processeddata vectors
  • For each array design, for each probe, identify the matching probe on the merged AD. Have to deal with situation
  • where more than one occurrence of each sequence is found.
  • all DEDVs must be switched to use the new AD's design elements
  • all bioassays must be switched to the new AD.
  • update the EE description
  • commit changes.
  • Computed processed data vectors
This also handles the case of multisamples-per-platform - NOT the case of one-sample-per-platform but multiple platforms; for that you have to run VectorMerging. For more nutty situations this will probably create a mess.
Author:
pavlidis
See Also:
  • Field Details

    • NULL_BIOSEQUENCE

      public static final BioSequence NULL_BIOSEQUENCE
      Used to identify design elements that have no sequence associated with them.
  • Constructor Details

    • ExpressionExperimentPlatformSwitchService

      public ExpressionExperimentPlatformSwitchService()
  • Method Details

    • switchExperimentToArrayDesign

      @Transactional public void switchExperimentToArrayDesign(ExpressionExperiment ee, ArrayDesign arrayDesign)
      If you know the array designs are already in a merged state, you should use switchExperimentToMergedPlatform
      Parameters:
      ee - ee
      arrayDesign - The array design to switch to. If some samples already use that array design, nothing will be changed for them.
    • switchExperimentToMergedPlatform

      @Transactional public ArrayDesign switchExperimentToMergedPlatform(ExpressionExperiment expExp)
      Automatically identify an appropriate merged platform
      Parameters:
      expExp - the experiment to switch to a merged platform
      Returns:
      the selected merged platform the experiment was switched to