Class FirstPassSectionSpotsParser

java.lang.Object
net.sf.basedb.util.importer.spotdata.FirstPassSectionSpotsParser
All Implemented Interfaces:
BaseFileSectionParser

public class FirstPassSectionSpotsParser
extends Object
implements BaseFileSectionParser
Parses a 'spots' section of a BASEfile with bioassay set spot data. This section is optional but can also appear more than once (eg. serial BASEfile). The section must have an 'assays' header that contains the id:s of the bioassays that have spot data in this section. The id values should either reference an id from the 'assays' section or the id of an existing bioassay in the database.

The section must also contain a 'columns' header that includes at least 'position', 'reporter' and 'assayData' columns. The 'assayData' is a meta column that expands to the columns defined by the required 'assayFields' header. This header must define as many 'intensityN' columns as there are channels in the experiment. For two-channel data, it may instead optionally use M (l2ratio1_2) and A (l10intgmean1_2). Columns with extra values can be defined by including a 'setExtraFloats' header. This header just enumerates the extra columns. A macthing column must also be presen in the 'assayFields' header.

NOTE! Column names can be redefined by calling BaseFileParser.setRedefinedColumnName(String, String, String).

Here is an example of the headers and the first data line of a matrix BASEfile which has two two-channel assays and one extra value column.

section spots
assays  101     102
columns position        reporter        assayData
assayFields intensity1 intensity2 extra1
setExtraFloats extra1
%
1       1       1.0     2.0     0.5     2.0     3.0     0.2
The first pass will check the headers and extract position/reporter mappings. This is important because we need to know if the child bioassay set has the same or a different position/reporter mapping than the parent bioassay set.
Version:
2.14
Author:
Nicklas
Last modified
$Date: 2019-03-20 14:31:03 +0100 (ons, 20 mars 2019) $
  • Field Details

    • SECTION

      public static final String SECTION
      The section of the BASEfile this parser can parse, eg. 'spots'.
      See Also:
      Constant Field Values
    • dc

      private final DbControl dc
    • info

      private final BaseFileInfo info
    • parent

      private final BioAssaySet parent
    • totalBytes

      private final String totalBytes
    • progressReportInterval

      private final long progressReportInterval
    • nextProgressReport

      private long nextProgressReport
    • sectionCount

      private int sectionCount
    • mapZeroToNull

      private boolean mapZeroToNull
    • spotIntensityParsers

      private List<SpotIntensityParser> spotIntensityParsers
  • Constructor Details

    • FirstPassSectionSpotsParser

      public FirstPassSectionSpotsParser​(DbControl dc, BaseFileInfo info, BioAssaySet parent)
      Creates a new 'section spot' parser for the first pass. This parser will extract header information and position/reporter mapping information.
      Parameters:
      dc - A DbControl to use for database access
      info - Information about the file we are parsing
      parent - The parent bioassay set
  • Method Details