All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.monarchinitiative.phenol.analysis.ItemSet Maven / Gradle / Ivy

The newest version!
package org.monarchinitiative.phenol.analysis;

import org.monarchinitiative.phenol.ontology.data.TermId;

import java.util.Map;
import java.util.Set;

/**
 * Interface for item sets for overrepresentation analysis.
 * The generic type T can be a TermId if the item are represented
 * as {@link TermId}, as may be the case for Gene Ontology.
 * @param  The type of the annotated items.
 * @author Peter N Robinson
 */
public interface ItemSet {
  /** Key -- TermId for a domain item. Value -- Object with Ontologuy annotations of the item.*/
  Map getAnnotationMap();
  /** Set of annotated items. */
  Set getGeneSet();

  /**
   * @param itemId Id of a domain item.
   * @return number of Ontology terms that annotate the given item.
   */
  int getDirectAnnotationCount(T itemId);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy