# multcompare

Multiple comparison of marginal means for multiple analysis of variance (MANOVA)

*Since R2023b*

## Description

specifies options using one or more name-value arguments in addition to any of the input
argument combinations in the previous syntaxes. For example, you can specify the confidence
level and the type of critical value used to determine if the means are significantly
different. `m`

= multcompare(___,`Name=Value`

)

## Examples

### Perform Multiple Comparison of Marginal Means for One-Way MANOVA

Load the `patients`

data set.

`load patients`

The variable `Smoker`

contains data for patient smoking status, and the variables `Systolic`

and `Diastolic`

contain data for patient systolic and diastolic blood pressure.

Perform a one-way MANOVA using `Smoker`

as the factor and `Systolic`

and `Diastolic`

as the response variables.

`maov = manova(Smoker,[Systolic Diastolic],FactorNames="Smoker")`

maov = 1-way manova Y1,Y2 ~ 1 + Smoker Source DF TestStatistic Value F DFNumerator DFDenominator pValue ______ __ _____________ ______ ______ ___________ _____________ __________ Smoker 1 pillai 0.6763 101.33 2 97 1.7465e-24 Error 98 Total 99 Properties, Methods

`maov`

is a `manova`

object containing the results of the one-way MANOVA. The small *p*-value for `Smoker`

indicates that smoking status has a statistically significant effect on the mean response vector.

Perform a multiple comparison of marginal means for the one-way MANOVA.

m = multcompare(maov)

`m=`*1×6 table*
Group1 Group2 MeanDifference Lower Upper pValue
______ ______ ______________ _______ _______ __________
false true -10.246 -11.667 -8.8247 1.0596e-10

The `MeanDifference`

column in the table output indicates that the marginal mean for smokers is larger than the marginal mean for non-smokers. The small *p*-value in the `pValue`

column indicates that this difference is statistically significant, which is consistent with the small *p*-value for the `Smoker`

term in the MANOVA model.

### Specify Critical Value Type for Multiple Comparison of Means

Load the `carsmall`

data set.

`load carsmall`

The variable `Model_Year`

contains data for the year a car was manufactured, and the variable `Cylinders`

contains data for the number of engine cylinders in the car. The `Acceleration`

and `Displacement`

variables contain data for car acceleration and displacement.

Use the `table`

function to create a table from the data in `Model_Year`

, `Cylinders`

, `Acceleration`

, and `Displacement`

.

tbl = table(Model_Year,Cylinders,Acceleration,Displacement,VariableNames=["Year" "Cylinders" "Acceleration" "Displacement"]);

Perform a two-way MANOVA using the table variables `Year`

and `Cylinders`

as factors, and the `Acceleration`

and `Displacement`

variables as response variables.

`maov = manova(tbl,"Acceleration,Displacement ~ Cylinders + Year")`

maov = 2-way manova Acceleration,Displacement ~ 1 + Year + Cylinders Source DF TestStatistic Value F DFNumerator DFDenominator pValue _________ __ _____________ ________ ______ ___________ _____________ __________ Year 2 pillai 0.084893 2.1056 4 190 0.081708 Cylinders 2 pillai 0.94174 42.27 4 190 2.5049e-25 Error 95 Total 99 Properties, Methods

`maov`

is a `manova`

object that contains the results of the two-way MANOVA. The table output shows that the *p*-value for the MANOVA model term `Year`

is too large to conclude that `Year`

has a statistically significant effect on the mean response vector. However, the small *p*-value for `Cylinders`

indicates that enough evidence exists to conclude that `Cylinders`

has a statistically significant effect on the mean response vector.

Perform Scheffe's test to determine which values of the factor `Cylinders`

correspond to statistically different marginal means.

m = multcompare(maov,"Cylinders",CriticalValueType="scheffe")

`m=`*3×6 table*
Group1 Group2 MeanDifference Lower Upper pValue
______ ______ ______________ _______ _______ __________
4 6 -53.756 -66.044 -41.467 2.0412e-17
4 8 -117.35 -129.12 -105.58 3.3198e-42
6 8 -63.594 -77.001 -50.188 2.4573e-19

The small *p*-values in the `pValue`

column indicate that each marginal mean is statistically different from the other two.

## Input Arguments

`maov`

— MANOVA results

`manova`

object

MANOVA results, specified as a `manova`

object.
The properties of `maov`

contain the factor values and response data
used by `multcompare`

to calculate the difference in means.

`factor`

— Factor used to group response data

string scalar | character array

Factor used to group the response data, specified as a string scalar or character array.
`factor`

must be a name in
`maov.FactorNames`

.

**Example: **`"Factor2"`

**Data Types: **`char`

| `string`

### Name-Value Arguments

Specify optional pairs of arguments as
`Name1=Value1,...,NameN=ValueN`

, where `Name`

is
the argument name and `Value`

is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.

**Example: **`multcompare(maov,Alpha=0.01,CriticalValueType="dunnett")`

sets
the significance level of the confidence intervals to `0.01`

and uses
Dunnett's critical value to calculate the *p*-values.

`Alpha`

— Significance level

`0.05`

(default) | scalar value in the range (0,1)

Significance level for the estimates, specified as a scalar value in the range
(0,1). The confidence level of the confidence intervals is $$100(1-\alpha )\%$$. The default value for `Alpha`

is
`0.05`

, which returns 95% confidence intervals for the
estimates.

**Example: **`Alpha=0.01`

**Data Types: **`single`

| `double`

`CriticalValueType`

— Critical value type

`"tukey-kramer"`

(default) | `"hsd"`

| `"dunn-sidak"`

| `"bonferroni"`

| `"scheffe"`

| `"dunnett"`

| `"lsd"`

Critical value type used by the `multcompare`

function to
calculate *p*-values, specified as one of the options in the
following table. Each option specifies the statistical test that
`multcompare`

uses to calculate the critical value.

Option | Statistical Test |
---|---|

`"tukey-kramer"` (default) | Tukey-Kramer test |

`"hsd"` | Honestly Significant Difference test (same as
`"tukey-kramer"` ) |

`"dunn-sidak"` | Dunn-Sidak correction |

`"bonferroni"` | Bonferroni correction |

`"scheffe"` | Scheffe test |

`"dunnett"` | Dunnett's test — The control group is selected in the generated plot and cannot be changed. |

`"lsd"` | Stands for Least Significant Difference and uses the critical value for
a plain t-test. This option does not protect against the
multiple comparisons problem. In other words, the probability of two
marginal means being incorrectly flagged as significantly different
increases with the number of factor values. |

**Example: **`CriticalValueType="dunn-sidak"`

**Data Types: **`char`

| `string`

## Output Arguments

`m`

— Multiple comparison procedure results

table

Multiple comparison procedure results, returned as a table with the following variables:

`Group1`

— Values of the factors in the first comparison group`Group2`

— Values of the factors in the second comparison group`MeanDifference`

— Difference in the marginal mean response between the observations in`Group1`

and the observations in`Group2`

`Lower`

— 95% lower confidence bound on the marginal mean difference`Upper`

— 95% upper confidence bound on the marginal mean difference`pValue`

—*p*-value corresponding to the null hypothesis that the marginal mean of`Group1`

is not statistically different from the mean of`Group2`

## Version History

**Introduced in R2023b**

## See Also

## MATLAB Command

You clicked a link that corresponds to this MATLAB command:

Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

## How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

### Americas

- América Latina (Español)
- Canada (English)
- United States (English)

### Europe

- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)

- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)