Documentation Center

  • Trial Software
  • Product Updates

manova

Class: RepeatedMeasuresModel

Multivariate analysis of variance

Syntax

  • manovatbl = manova(rm) example
  • manovatbl = manova(rm,Name,Value) example
  • [manovatbl,A,C,D] = manova(___) example

Description

example

manovatbl = manova(rm) returns the results of multivariate analysis of variance (manova) for the repeated measures model rm.

example

manovatbl = manova(rm,Name,Value) also returns manova results with additional options, specified by one or more Name,Value pair arguments.

example

[manovatbl,A,C,D] = manova(___) also returns arrays A, C, and D for the hypotheses tests of the form A*B*C = D, where D is zero.

Tips

  • The multivariate response for each observation (subject) is the vector of repeated measures.

  • To test a more general hypothesis A*B*C = D, use coeftest.

Input Arguments

expand all

rm — Repeated measures modelRepeatedMeasuresModel object

Repeated measures model, returned as a RepeatedMeasuresModel object.

For properties and methods of this object, see RepeatedMeasuresModel.

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside single quotes (' '). You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

'WithinModel' — Model specifying within-subjects hypothesis test'separatemeans' (default) | model specification using formula

Model specifying the within-subjects hypothesis test, specified as one of the following:

  • 'separatemeans' — Compute a separate mean for each group, and test for equality among the means.

  • Model specification — This is a model specification in the within-subject factors. Test each term in the model. In this case, tbl contains a separate manova for each term in the formula, with the multivariate response equal to the vector of coefficients of that term.

  • An r-by-nc matrix, C, specifying nc contrasts among the r repeated measures. If Y represents the matrix of repeated measures you use in the repeated measures model rm, then the output tbl contains a separate manova for each column of Y*C.

Example: 'WithinModel','separatemeans'

'By' — Single between-subjects factorstring

Single between-subjects factor, specified as the comma-separated pair consisting of 'By' and a string. manova performs a separate test of the within-subjects model for each value of this factor.

For example, if you have a between-subjects factor, Drug, then you can specify that factor to perform manova as follows.

Example: 'By','Drug'

Output Arguments

expand all

manovatbl — Results of multivariate analysis of variancetable

Results of multivariate analysis of variance for the repeated measures model rm, returned as a table.

manova uses these methods to measure the contributions of the model terms to the overall covariance:

  • Wilks' Lambda

  • Pillai's trace

  • Hotelling-Lawley trace

  • Roy's maximum root statistic

For details, see Multivariate Analysis of Variance for Repeated Measures.

manova returns the results for these tests for each group. manovatbl contains the following columns.

Column NameDefinition
WithinWithin-subject terms
BetweenBetween-subject terms
StatisticName of the statistic computed
ValueValue of the corresponding statistic
FF-statistic value
RSquareMeasure for variance explained
df1Numerator degrees of freedom
df2Denominator degrees of freedom
pValuep-value for the corresponding F-statistic value

Data Types: table

A — Specification based on between-subjects modelmatrix | cell array

Specification based on the between-subjects model, returned as a matrix or a cell array. It permits the hypothesis on the elements within given columns of B (within time hypothesis). If manovatbl contains multiple hypothesis tests, A might be a cell array.

Data Types: single | double | cell

C — Specification based on within-subjects modelmatrix | cell array

Specification based on the within-subjects model, returned as a matrix or a cell array. It permits the hypotheses on the elements within given rows of B (between time hypotheses). If manovatbl contains multiple hypothesis tests, C might be a cell array.

Data Types: single | double | cell

D — Hypothesis value0

Hypothesis value, returned as 0.

Examples

expand all

Perform Multivariate Analysis of Variance

Load the sample data.

load fisheriris

The column vector speciesconsists of iris flowers of three different species: setosa, versicolor, virginica. The double matrix meas consists of four types of measurements on the flowers: the length and width of sepals and petals in centimeters, respectively.

Store the data in a table array.

t = table(species,meas(:,1),meas(:,2),meas(:,3),meas(:,4),...
'VariableNames',{'species','meas1','meas2','meas3','meas4'});
Meas = table([1 2 3 4]','VariableNames',{'Measurements'});

Fit a repeated measures model where the measurements are the responses and the species is the predictor variable.

rm = fitrm(t,'meas1-meas4~species','WithinDesign',Meas);

Perform multivariate analysis of variance.

manova(rm)
ans = 

     Within       Between      Statistic      Value        F       RSquare    df1    df2      pValue   
    ________    ___________    _________    _________    ______    _______    ___    ___    ___________

    Constant    (Intercept)    Pillai         0.99013    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Wilks        0.0098724    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Hotelling       100.29    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Roy             100.29    4847.5    0.99013    3      145    3.7881e-145
    Constant    species        Pillai         0.96909    45.749    0.48455    6      292     2.4729e-39
    Constant    species        Wilks         0.041153    189.92    0.79714    6      290     2.3958e-97
    Constant    species        Hotelling       23.051    555.17    0.92016    6      288    4.6662e-155
    Constant    species        Roy              23.04    1121.3     0.9584    3      146    1.4771e-100

Perform multivariate anova separately for each species.

manova(rm,'By','species')
ans = 

     Within          Between          Statistic     Value        F       RSquare    df1    df2      pValue   
    ________    __________________    _________    ________    ______    _______    ___    ___    ___________

    Constant    species=setosa        Pillai         0.9823    2682.7     0.9823    3      145    9.0223e-127
    Constant    species=setosa        Wilks        0.017698    2682.7     0.9823    3      145    9.0223e-127
    Constant    species=setosa        Hotelling      55.504    2682.7     0.9823    3      145    9.0223e-127
    Constant    species=setosa        Roy            55.504    2682.7     0.9823    3      145    9.0223e-127
    Constant    species=versicolor    Pillai           0.97    1562.8       0.97    3      145    3.7058e-110
    Constant    species=versicolor    Wilks        0.029999    1562.8       0.97    3      145    3.7058e-110
    Constant    species=versicolor    Hotelling      32.334    1562.8       0.97    3      145    3.7058e-110
    Constant    species=versicolor    Roy            32.334    1562.8       0.97    3      145    3.7058e-110
    Constant    species=virginica     Pillai        0.97261    1716.1    0.97261    3      145    5.1113e-113
    Constant    species=virginica     Wilks        0.027394    1716.1    0.97261    3      145    5.1113e-113
    Constant    species=virginica     Hotelling      35.505    1716.1    0.97261    3      145    5.1113e-113
    Constant    species=virginica     Roy            35.505    1716.1    0.97261    3      145    5.1113e-113

Return Arrays of the Hypothesis Test

Load the sample data.

load fisheriris

The column vector species consists of iris flowers of three different species: setosa, versicolor, virginica. The double matrix meas consists of four types of measurements on the flowers: the length and width of sepals and petals in centimeters, respectively.

Store the data in a table array.

t = table(species,meas(:,1),meas(:,2),meas(:,3),meas(:,4),...
'VariableNames',{'species','meas1','meas2','meas3','meas4'});
Meas = dataset([1 2 3 4]','VarNames',{'Measurements'});

Fit a repeated measures model where the measurements are the responses and the species is the predictor variable.

rm = fitrm(t,'meas1-meas4~species','WithinDesign',Meas);

Perform multivariate analysis of variance. Also return the arrays for constructing the hypothesis test.

[manovatbl,A,C,D] = manova(rm)
manovatbl = 

     Within       Between      Statistic      Value        F       RSquare    df1    df2      pValue   
    ________    ___________    _________    _________    ______    _______    ___    ___    ___________

    Constant    (Intercept)    Pillai         0.99013    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Wilks        0.0098724    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Hotelling       100.29    4847.5    0.99013    3      145    3.7881e-145
    Constant    (Intercept)    Roy             100.29    4847.5    0.99013    3      145    3.7881e-145
    Constant    species        Pillai         0.96909    45.749    0.48455    6      292     2.4729e-39
    Constant    species        Wilks         0.041153    189.92    0.79714    6      290     2.3958e-97
    Constant    species        Hotelling       23.051    555.17    0.92016    6      288    4.6662e-155
    Constant    species        Roy              23.04    1121.3     0.9584    3      146    1.4771e-100


A = 

    [1x3 double]
    [2x3 double]


C =

     1     0     0
    -1     1     0
     0    -1     1
     0     0    -1


D =

     0

Index into matrix A.

A{1}
ans =

     1     0     0
A{2}
ans =

     0     1     0
     0     0     1

See Also

| | |

More About

Was this topic helpful?