Learn R Programming

PhenStat (version 2.6.0)

PhenTestResult-class: Class "PhenTestResult"

Description

A list-based S4 class for storing of model fitting results and other information like dependent variable, method used to build a model, etc. Helps to support operations needed for model fitting process and modelling/testing results storage. In the package PhenTestResult object is created by function testDataset.

Arguments

Explore PhenTestResult object

PhenTestResults object instance contains the following slots: 1. "analysedDataset" contains subdataset that was used for the modelling/testing: analysedDataset(phenTestResult) 2. "depVariable" contains dependent variable that was tested: getVariable(phenTestResult) 3. "refGenotype" contains reference genotype which is usually is wildtype: refGenotype(phenTestResult) 4. "testGenotype" contains test genotype: testGenotype(phenTestResult) 5. "method" contains method name that was used for modelling/testing: method(phenTestResult) 6. "transformationRequired" contains TRUE/FALSE value indicating transofrmation of dependent variable: transformationText(phenTestResult) or phenTestResult@transformationRequired 7. "lambdaValue" contains lambda value for the Box-Cox transformation: transformationText(phenTestResult) or phenTestResult$lambdaValue 8. "scaleShift" contains the value of scale shift for Box-Cox transformation: transformationText(phenTestResult) or phenTestResult@scaleShift 9. "transformationCode" contains the code of transformation. Possible values: 0 - transformation is not applicable (methods "FE", "RR", "LR") or switched off by user 1 - transformation is not needed (1 is within the 95 2 - log transformation 3 - power transformation 4 - transformation is not performed since optimal lambda value is not found (-5 > lambda > 5) transformationText(phenTestResult) or phenTestResult@transformationCode 10. "parameters" contains the parameters used during method application, e.g. pThreshold for MM and TF: parameters(phenTestResult) 11. Modelling/testing results are stored in the sections "analysisResults": analysisResults(phenTestResult) The contents of the analysisResults slot depend on framework that was used. The results of MM and TF frameworks: 1. Equation used during linear modeling: analysisResults(phenTestResult)$equation 2. Batch effect significance: analysisResults(phenTestResult)$model.effect.batch 3. Variance equality: analysisResults(phenTestResult)$model.effect.variance 4. Weight effect significance: analysisResults(phenTestResult)$model.effect.weight 5. Sex effect significance: analysisResults(phenTestResult)$model.effect.interaction 6. Evidence of sex effect (p-value): analysisResults(phenTestResult)$model.output.interaction 7. Evidence of genotype effect (p-value): analysisResults(phenTestResult)$model.output.genotype.nulltest.pVal 8. Formula for the final genotype model: analysisResults(phenTestResult)$model.formula.genotype 9. Formula for the final null model: analysisResults(phenTestResult)$model.formula.null 10. Model fitting output: analysisResults(phenTestResult)$model.output 11. Model fitting summary: summary(analysisResults(phenTestResult)$model.output)$tTable The results of FE and RR frameworks are stored as a list of htestPhenStat S4 objects: analysisResults(phenTestResult)[[1]]. Each one htestPhenStat object contains: 1. Output of Fisher Exact Test: pvalue(analysisResults(phenTestResult)[[1]]). 2. Effect size: ES(analysisResults(phenTestResult)[[1]]). 3. Name of the table analysed (all, males, females): analysedSubset(analysisResults(phenTestResult)[[1]]). 4. Comparison, used for RR only (High vs Normal/Low, Low vs High/Normal): comparison(analysisResults(phenTestResult)[[1]]). 5. Matrix of counts: matrixCount(analysisResults(phenTestResult)[[1]]).

Slots

analysedDataset:
Object of class "data.frame" ~~ analysed dataset
transformationRequired:
Object of class "logical" ~~ flag indicating was or not transformation performed
lambdaValue:
Object of class "numeric" ~~ Box-Cox transform lambda value
scaleShift:
Object of class "numeric" ~~ Box-Cox transform scale shift
transformationCode:
Object of class "numeric" ~~ code explaining the transformation output
depVariable:
Object of class "character" ~~ dependent variable
refGenotype:
Object of class "character" ~~ reference genotype
testGenotype:
Object of class "character" ~~ test genotype
method:
Object of class "character" ~~ analysis method
parameters:
Object of class "matrix" ~~ parameters of method
analysisResults:
Object of class "list" ~~ results of the analysis

Methods

getVariable
(accessor): Returns dependent variable
refGenotype
(accessor): Returns reference genotype
testGenotype
(accessor): Returns test genotype
method
(accessor): Returns method used
methodText
(accessor): Returns full name of the method used
parameters
(accessor): Returns parameteres used during the method application
analysisResults
(accessor): Returns analysis results depending on method
analysedDataset
(accessor): Returns analysed dataset
transformationText
(accessor): Returns the info about transformation
batchIn
Returns TRUE if the batch is in the dataset, FALSE otherwise
weightIn
Returns TRUE if the weight is in the dataset, FALSE otherwise
noSexes
Returns number of sexes in the dataset
show
Prints out the PhenTestResult object
getCountMatrices
Returns count matrices if they are present (for methods "FE" and "RR"), NULL otherwise.

Examples

Run this code
    # Mixed Model framework
    file <- system.file("extdata", "test1.csv", package="PhenStat")
    test <- PhenList(dataset=read.csv(file),
            testGenotype="Sparc/Sparc")
    result <- testDataset(test,
            equation="withoutWeight",
            depVariable="Bone.Area")
    getVariable(result)
    method(result)
    # Batch effect is significant
    analysisResults(result)$model.effect.batch    
    # Variance homogeneosity 
    analysisResults(result)$model.effect.variance
    # Weight effect is significant
    analysisResults(result)$model.effect.weight     
    # Sex effect is significant 
    analysisResults(result)$model.effect.interaction    
    # Sex effect p-value - the result of the test 
    analysisResults(result)$model.output.interaction
    # Genotype effect p-value    
    analysisResults(result)$model.output.genotype.nulltest.pVal
    # Final model formula with genotype
    analysisResults(result)$model.formula.genotype 
    # Final model formula without genotype    
    analysisResults(result)$model.formula.null 
    # Final model fitting output
    # result$model.output 
    # Final model fitting summary
    # summary(result$model.output)$tTable 
    
    # Fisher Exact Test framework
    file <- system.file("extdata", "test_categorical.csv", package="PhenStat")
    test <- PhenList(dataset=read.csv(file),
            testGenotype="Aff3/Aff3")
    result <- testDataset(test,
            depVariable="Thoracic.Processes",
            method="FE") 
    getVariable(result)
    method(result)       
    for (i in seq_along(analysisResults(result))) {
        val <- analysisResults(result)[[i]]
        val
    }

Run the code above in your browser using DataLab