Class SVDServiceImpl
java.lang.Object
ubic.gemma.core.analysis.preprocess.svd.SVDServiceImpl
- All Implemented Interfaces:
SVDService
Perform SVD on expression data and store the results.
- Author:
- paul
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetImportantFactors
(ExpressionExperiment ee, Collection<ExperimentalFactor> experimentalFactors, Double importanceThreshold) Get the SVD information for experiment with id given.Compare ExperimentalFactors and BioAssay.processingDates to the PCs.Compare ExperimentalFactors and BioAssay.processingDates to the PCs.getTopLoadedVectors
(ExpressionExperiment ee, int component, int count) boolean
Check if a dataset has a SVD analysis.static void
populateBMFMap
(Map<ExperimentalFactor, Map<BioMaterial, Number>> bioMaterialFactorMap, BioMaterial bm) Retrieve relationships between factors, biomaterials and factor values.Compute and update the SVD analysis fo the given experiment.
-
Constructor Details
-
SVDServiceImpl
public SVDServiceImpl()
-
-
Method Details
-
populateBMFMap
public static void populateBMFMap(Map<ExperimentalFactor, Map<BioMaterial, Number>> bioMaterialFactorMap, BioMaterial bm) Retrieve relationships between factors, biomaterials and factor values.Continuous factor values are converted to a
Double
if possible, otherwise theFactorValue.getId()
is used. This is the case for categorical measurement.- Parameters:
bioMaterialFactorMap
- to be populated, of experimental factor -> biomaterial ID -> factor value (double value if possible otherwise ID)bm
- to populate for
-
getSvd
Get the SVD information for experiment with id given.- Specified by:
getSvd
in interfaceSVDService
- Returns:
- value or null if there isn't one.
-
svd
Description copied from interface:SVDService
Compute and update the SVD analysis fo the given experiment.- Specified by:
svd
in interfaceSVDService
- Throws:
SVDException
-
getTopLoadedVectors
@Transactional(readOnly=true) public Map<ProbeLoading,DoubleVectorValueObject> getTopLoadedVectors(ExpressionExperiment ee, int component, int count) - Specified by:
getTopLoadedVectors
in interfaceSVDService
-
hasSvd
Description copied from interface:SVDService
Check if a dataset has a SVD analysis.- Specified by:
hasSvd
in interfaceSVDService
-
getImportantFactors
@Transactional(readOnly=true) public Set<ExperimentalFactor> getImportantFactors(ExpressionExperiment ee, Collection<ExperimentalFactor> experimentalFactors, Double importanceThreshold) - Specified by:
getImportantFactors
in interfaceSVDService
- Parameters:
ee
- the expression experimentexperimentalFactors
- to considerimportanceThreshold
- threshold for pvalue of association with factor. Suggested value might be 0.01.- Returns:
- factors which are "significantly" associated with one of the first three PCs
-
getSvdFactorAnalysis
Description copied from interface:SVDService
Compare ExperimentalFactors and BioAssay.processingDates to the PCs.- Specified by:
getSvdFactorAnalysis
in interfaceSVDService
- Parameters:
ee
- the experiment- Returns:
- SVD VO
-
getSvdFactorAnalysis
Description copied from interface:SVDService
Compare ExperimentalFactors and BioAssay.processingDates to the PCs.- Specified by:
getSvdFactorAnalysis
in interfaceSVDService
- Parameters:
pca
- PCA- Returns:
- SVD VO
-