# multcomp 1.4-32 (CRAN)

Simultaneous Inference in General Parametric Models

[Record of 1.4-32](/cran/multcomp/v/1.4-32.md) | Compare: [With 1.4-31](/cran/multcomp/compare/1.4-31...1.4-32.md), [With another package](/compare/multcomp.md#add), [Downloads](/downloads/compare/multcomp.md#add) | [Licences](/cran/multcomp/licences.md) | [SBOM](/cran/multcomp/sbom.md)

Install from CRAN: `install.packages("multcomp")`

Also from:

- r2u (Ubuntu binaries): `sudo apt install r-cran-multcomp` _Listed from recorded download activity on this channel, not from a live index, so read it as last known. Bioconductor packages are named r-bioc-<name> there._
- Fedora COPR (iucar/cran): `sudo dnf install R-CRAN-multcomp` _A rebuild of what CRAN lists, so it can lag CRAN by a rebuild._
- autoCRAN (openSUSE): `sudo zypper install R-multcomp` _Listed from recorded download activity on this channel, not from a live index, so read it as last known._
- conda-forge: `conda install -c conda-forge r-multcomp` _Listed from recorded download activity on this channel, not from a live index, so read it as last known._

- CRAN checks: All OK (13 platforms)
- CRAN 30-day downloads: 138K (down 3% on the 30 days before, the worse direction)
- Dependent packages: 70 (51 more suggest it)
- Test coverage: 58% (of lines run by tests)
- Advisories: None known

## About

[Method](/about/licenses.md)

Simultaneous tests and confidence intervals for general linear hypotheses in parametric models, including linear, generalized linear, linear mixed effects, and survival models. The package includes demos reproducing analyzes presented in the book "Multiple Comparisons Using R" (Bretz, Hothorn, Westfall, 2010, CRC Press).

- Maintainer: Torsten Hothorn
- Licence: [GPL-2](/licences/GPL-2.md)
- Latest release: 21 Aug 2026
- First release: 20 Jun 2002

- [Website](https://www.routledge.com/Multiple-Comparisons-Using-R/Bretz-Hothorn-Westfall/p/book/9781584885740)
- [CRAN page](https://cran.r-project.org/package=multcomp)
- [Source repository](https://codeberg.org/thothorn/multcomp)
- [Source of every release](https://github.com/cran/multcomp)

[Compare with another package](/compare/multcomp.md#add)

**More details**

- Releases: 112
- Needs compilation: No
- LazyData: yes

**Task views (2)**

- [Clinical Trial Design, Monitoring, Analysis and Reporting](/topics/cran/ClinicalTrials.md)
- [Survival Analysis](/topics/cran/Survival.md)

Earlier: Statistics for the Social Sciences (until it was retired on 6 Mar 2022).

**Subjects (1) [Method](/about/subjects.md#found)**

- [Linear and generalized regression](/topics/subjects/linear-and-generalized-regression.md), core

**Cite**

#### Package

Run in R for the authors' entry:

`citation("multcomp")`

The package provides a citation file, so `citation()` returns the authors' own entry.

#### R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA: Balamuta, J. J. (2026). R Observatory: Metrics for multcomp version 1.4-32 [Data set]. HJJB, LLC. Data release v2026-10-28. https://doi.org/10.5281/zenodo.21843040

BibTeX:

```
@misc{robservatorymultcomp,
  author    = {Balamuta, James Joseph},
  title     = {{R} {Observatory}: Metrics for {multcomp} version 1.4-32},
  year      = {2026},
  publisher = {HJJB, LLC},
  doi       = {10.5281/zenodo.21843040},
  url       = {https://r-observatory.thecoatlessprofessor.com/packages/multcomp},
  note      = {Data set. Data release v2026-10-28}
}
```

From data release v2026-10-28, which the citation names so these numbers can be found later.

## Health

[Method](/about/checks-health.md)

All 13 check platforms pass.

13 CRAN platforms: 13 OK.

Platforms now:

- r-devel-linux-x86_64-debian-clang: OK
- r-devel-linux-x86_64-debian-gcc: OK
- r-devel-linux-x86_64-fedora-clang: OK
- r-devel-linux-x86_64-fedora-gcc: OK
- r-devel-windows-x86_64: OK
- r-oldrel-macos-arm64: OK
- r-oldrel-macos-x86_64: OK
- r-oldrel-windows-x86_64: OK
- r-patched-linux-x86_64: OK
- r-release-linux-x86_64: OK
- r-release-macos-arm64: OK
- r-release-macos-x86_64: OK
- r-release-windows-x86_64: OK

#### Over time

No change since 25 Oct 2026

**As a list (8)**

| Changed | Worst status | OK | Notes | Warnings | Errors |
| --- | --- | ---: | ---: | ---: | ---: |
| 25 Oct 2026 | OK | 13 | 0 | 0 | 0 |
| 24 Oct 2026 | Error | 12 | 0 | 0 | 1 |
| 26 Aug 2026 | OK | 13 | 0 | 0 | 0 |
| 27 Jul 2026 | Note | 12 | 1 | 0 | 0 |
| 21 Jul 2026 | OK | 13 | 0 | 0 | 0 |
| 8 Jul 2026 | Error | 12 | 0 | 0 | 1 |
| 11 Mar 2026 | OK | 14 | 0 | 0 | 0 |
| 10 Mar 2026 | Warning | 13 | 0 | 1 | 0 |

Since March 2026

[Check results on CRAN](https://cran.r-project.org/web/checks/check_results_multcomp.html)

## Downloads

[Method](/about/downloads.md)

- Downloads in the last 30 days: 154,631 (up 0.34% on the 30 days before, the better direction. It is the sum of 5 channels: CRAN, r2u, autoCRAN, conda-forge and c2d4u.)

CRAN alone: rank among CRAN packages, last 30 days: 282 of 26,530.

| Channel | Downloads in the last 30 days | In the total | Rank in that channel | Change |
| --- | ---: | --- | --- | --- |
| CRAN | 138,202 | yes | 282 of 26,530 | down 3% on the 30 days before, the worse direction |
| r2u | 5,376 | yes | 411 of 30,526 | up 86.1% on the 30 days before, the better direction |
| autoCRAN | 211 | yes | 201 of 29,212 | down 19.8% on the 30 days before, the worse direction |
| conda-forge | 10,707 | yes | 402 of 3,828 | up 27.8% on the 30 days before, the better direction |
| c2d4u | 135 | yes | 284 of 7,575 | down 21.5% on the 30 days before, the worse direction |

Other windows: [Last 90 days](/cran/multcomp.md?win=90d#downloads), [Last 365 days](/cran/multcomp.md?win=365d#downloads), [All time](/cran/multcomp.md?win=all#downloads).

To leave channels out of the total, name them in the address, joined by dots: `?off=conda_forge.c2d4u`.

#### Over time

Downloads over time, the last 12 whole months:

| Month | CRAN | r2u | autoCRAN | conda-forge | c2d4u | Sum |
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
| Oct 2025 | 175,476 | 1,795 | no figure | 6,610 | 159 | 184,040 |
| Nov 2025 | 186,737 | 830 | no figure | 6,717 | 278 | 194,562 |
| Dec 2025 | 141,144 | 547 | no figure | 5,028 | 264 | 146,983 |
| Jan 2026 | 131,099 | 546 | no figure | 5,937 | 170 | 137,752 |
| Feb 2026 | 121,280 | 693 | no figure | 6,507 | 109 | 128,589 |
| Mar 2026 | 168,992 | 2,234 | no figure | 7,475 | 157 | 178,858 |
| Apr 2026 | 157,098 | 1,236 | no figure | 7,468 | 60 | 165,862 |
| May 2026 | 157,267 | 817 | no figure | 6,442 | 3 | 164,529 |
| Jun 2026 | 163,721 | 891 | no figure | 6,872 | no figure | 171,484 |
| Jul 2026 | 151,688 | 2,482 | 309 | 8,655 | 39 | 163,173 |
| Aug 2026 | 133,567 | 2,901 | 278 | 8,512 | 173 | 145,431 |
| Sep 2026 | 149,624 | 5,360 | 253 | 10,707 | 133 | 166,077 |

First day on record: CRAN 4 Oct 2012, r2u 7 May 2022, autoCRAN 29 Jun 2026, conda-forge 2 May 2017, c2d4u 29 Oct 2011 (no longer updated).

Every channel here counts downloads, so the channels can be stacked and summed for one period. Each channel counts in its own way and covers a different span of years, so read a sum as a rough total, and read a rise where a channel begins as that channel starting, not as growth.

Weeks start on Monday. A first or last week or month that the channel does not cover in full is left out, so every point is a whole period.

Days with no record add nothing to their week or month. For a little-used package that is usually a day with no downloads, but it can also be a gap in collection.

[Compare downloads](/downloads/compare/multcomp.md#add)

## Dependencies

[Method](/about/reverse-dependencies.md)

- Needs: 7
- Dependent packages: 70
- Suggested by: 51

**Needs (7)**

- [codetools](/cran/codetools.md)
- graphics
- [mvtnorm](/cran/mvtnorm.md)
- [sandwich](/cran/sandwich.md)
- stats
- [survival](/cran/survival.md)
- [TH.data](/cran/TH.data.md)

- Installing it adds: 4 packages, 11.3 MB of source
- Of those, need compilation: 2

**Optional extras (20)**

- [asd](/cran/asd.md)
- [bibtex](/cran/bibtex.md)
- [coin](/cran/coin.md)
- [coxme](/cran/coxme.md)
- [DoseFinding](/cran/DoseFinding.md)
- [fixest](/cran/fixest.md)
- [foreign](/cran/foreign.md)
- [glmmTMB](/cran/glmmTMB.md)
- [gsDesign](/cran/gsDesign.md)
- [HH](/cran/HH.md)
- [ISwR](/cran/ISwR.md)
- [lattice](/cran/lattice.md)
- [lme4](/cran/lme4.md)
- [lmtest](/cran/lmtest.md)
- [MASS](/cran/MASS.md)
- [nlme](/cran/nlme.md)
- [robustbase](/cran/robustbase.md)
- [SimComp](/cran/SimComp.md)
- [tram](/cran/tram.md)
- [xtable](/cran/xtable.md)

**Dependent packages (50 of 70)**

| Package | Title | Downloads in 30 days |
| --- | --- | ---: |
| [coin](/cran/coin.md) | Conditional Inference Procedures in a Permutation Test Framework | 45,582 |
| [rms](/cran/rms.md) | Regression Modeling Strategies | 28,650 |
| [drc](/cran/drc.md) | Dose-Response Analysis Using R | 16,502 |
| [spatialreg](/cran/spatialreg.md) | Spatial Regression Analysis | 13,192 |
| [Publish](/cran/Publish.md) | Format Output of Various Routines in a Suitable Way for Reports and Publication | 10,296 |
| [HH](/cran/HH.md) | Statistical Analysis and Data Display: Heiberger and Holland | 6,608 |
| [mutoss](/cran/mutoss.md) | Unified Multiple Testing Procedures | 6,227 |
| [tram](/cran/tram.md) | Transformation Models | 5,438 |
| [piecewiseSEM](/cran/piecewiseSEM.md) | Piecewise Structural Equation Modeling | 3,873 |
| [jmv](/cran/jmv.md) | The 'jamovi' Analyses | 3,589 |
| [lavaSearch2](/cran/lavaSearch2.md) | Tools for Model Specification in the Latent Variable Framework | 3,204 |
| [SimComp](/cran/SimComp.md) | Simultaneous Comparisons for Multiple Endpoints | 2,992 |
| [mratios](/cran/mratios.md) | Ratios of Coefficients in the General Linear Model | 2,596 |
| [gMCP](/cran/gMCP.md) | Graph Based Multiple Comparison Procedures | 2,123 |
| [AgroR](/cran/AgroR.md) | Experimental Statistics and Graphics for Agricultural Sciences | 1,473 |
| [mlt.docreg](/cran/mlt.docreg.md) | Most Likely Transformations: Documentation and Regression Tests | 1,265 |
| [mixlm](/cran/mixlm.md) | Mixed Model ANOVA and Statistics for Education | 1,093 |
| [nparLD](/cran/nparLD.md) | Nonparametric Analysis of Longitudinal Data in Factorial Experiments | 1,089 |
| [medflex](/cran/medflex.md) | Flexible Mediation Analysis Using Natural Effect Models | 942 |
| [NADA2](/cran/NADA2.md) | Data Analysis for Censored Environmental Data | 841 |
| [sensR](/cran/sensR.md) | Thurstonian Models for Sensory Discrimination | 831 |
| [MANOVA.RM](/cran/MANOVA.RM.md) | Resampling-Based Analysis of Multivariate Data and Repeated Measures Designs | 811 |
| [nparcomp](/cran/nparcomp.md) | Multiple Comparisons and Simultaneous Confidence Intervals | 715 |
| [rtpcr](/cran/rtpcr.md) | qPCR Data Analysis | 667 |
| [Deducer](/cran/Deducer.md) | A Data Analysis GUI for R | 569 |
| [nph](/cran/nph.md) | Planning and Analysing Survival Studies under Non-Proportional Hazards | 538 |
| [Crossover](/cran/Crossover.md) | Analysis and Search of Crossover Designs | 493 |
| [LMMstar](/cran/LMMstar.md) | Repeated Measurement Models for Discrete Times | 493 |
| [aanova](/cran/aanova.md) | Robust Ecological and Fisheries Data Analysis and Visualization | 489 |
| [MCPAN](/cran/MCPAN.md) | Multiple Comparisons Using Normal Approximation | 467 |
| [ibd](/cran/ibd.md) | Incomplete Block Designs | 459 |
| [breathtestcore](/cran/breathtestcore.md) | Core Functions to Read and Fit 13c Time Series from Breath Tests | 443 |
| [drcte](/cran/drcte.md) | Statistical Approaches for Time-to-Event Data in Agriculture | 439 |
| [esci](/cran/esci.md) | Estimation Statistics with Confidence Intervals | 413 |
| [rankFD](/cran/rankFD.md) | Rank-Based Tests for General Factorial Designs | 392 |
| [dpcR](/cran/dpcR.md) | Digital PCR Analysis | 391 |
| [statforbiology](/cran/statforbiology.md) | Data Analyses in Agriculture and Biology | 382 |
| [cg](/cran/cg.md) | Compare Groups, Analytically and Graphically | 378 |
| [TTAinterfaceTrendAnalysis](/cran/TTAinterfaceTrendAnalysis.md) | Temporal Trend Analysis Graphical Interface | 375 |
| [DImodels](/cran/DImodels.md) | Diversity-Interactions (DI) Models | 369 |
| [rdhte](/cran/rdhte.md) | Heterogeneous Treatment Effects in Regression Discontinuity Designs | 368 |
| [postHoc](/cran/postHoc.md) | Tools for Post-Hoc Analysis | 353 |
| [qountstat](/cran/qountstat.md) | Statistical Analysis of Count Data and Quantal Data | 333 |
| [inecolr](/cran/inecolr.md) | Modeling and Plotting for Ecologist | 321 |
| [tramicp](/cran/tramicp.md) | Model-Based Causal Feature Selection for General Response Types | 318 |
| [rankMANOVA](/cran/rankMANOVA.md) | Rank-Based Tests for Multivariate Data in Nonparametric Factorial Designs | 313 |
| [MAGNAMWAR](/cran/MAGNAMWAR.md) | A Pipeline for Meta-Genome Wide Association | 304 |
| [BSagri](/cran/BSagri.md) | Safety Assessment in Agricultural Field Trials | 303 |
| [CausalModels](/cran/CausalModels.md) | Causal Inference Modeling for Estimation of Causal Effects | 300 |
| [twosigma](/cran/twosigma.md) | DE Analysis for Single-Cell RNA-Sequencing Data | 297 |

## Code

[Method](/about/code-metrics.md)

Selected function: `global`

- Kind: Internal R function
- File: R/pqfunctions.R, line 106
- Lines: 40
- Complexity: 4
- Covered by tests: 88%

Called by 2: [`Chisqtest`](/cran/multcomp.md?fn=Chisqtest&view=focus#code) (100% of lines run by tests), [`Ftest`](/cran/multcomp.md?fn=Ftest&view=focus#code) (100% of lines run by tests)

Calls 2: [`pqglht`](/cran/multcomp.md?fn=pqglht&view=focus#code) (85% of lines run by tests), [`MPinv`](/cran/multcomp.md?fn=MPinv&view=focus#code) (73% of lines run by tests)

Paths: 2 steps each way.

Called by 2:

- [`Chisqtest`](/cran/multcomp.md?fn=Chisqtest&view=focus#code)
- [`Ftest`](/cran/multcomp.md?fn=Ftest&view=focus#code)

Calls 2:

- [`pqglht`](/cran/multcomp.md?fn=pqglht&view=focus#code)
- [`MPinv`](/cran/multcomp.md?fn=MPinv&view=focus#code)

The open file in the files map is `R/pqfunctions.R`.

- Functions: 8
- Lines: 243
- Calls that stay inside it: 7
- Calls to other files: 2, to 2
- Calls from other files: 3, from 1

It calls: `R/maxsets.R` (1 call), `R/helpers.R` (1 call)

Called from: `R/methods.R` (3 calls)

| Function in pqfunctions.R | Calls in other files |
| --- | --- |
| [`global`](/cran/multcomp.md?fn=global&view=focus#code) selected | [`MPinv`](/cran/multcomp.md?fn=MPinv&view=focus#code) |
| [`adjusted`](/cran/multcomp.md?fn=adjusted&view=focus#code) | [`maxsets`](/cran/multcomp.md?fn=maxsets&view=focus#code) |
| [`adjusted_calpha`](/cran/multcomp.md?fn=adjusted_calpha&view=focus#code) | nothing outside this file |
| [`Chisqtest`](/cran/multcomp.md?fn=Chisqtest&view=focus#code) | nothing outside this file |
| [`Ftest`](/cran/multcomp.md?fn=Ftest&view=focus#code) | nothing outside this file |

**More functions (3)**

| Function in pqfunctions.R | Calls in other files |
| --- | --- |
| [`pqglht`](/cran/multcomp.md?fn=pqglht&view=focus#code) | nothing outside this file |
| [`univariate`](/cran/multcomp.md?fn=univariate&view=focus#code) | nothing outside this file |
| [`univariate_calpha`](/cran/multcomp.md?fn=univariate_calpha&view=focus#code) | nothing outside this file |


3 files with no calls to or from another: `R/parm.R`, `R/plot.R`, `R/print.R`.

The whole package has 98 function names in 13 files and 64 calls between them. Most calls between files: `R/helpers.R` and `R/methods.R` (4 calls), `R/methods.R` and `R/pqfunctions.R` (3 calls), `R/glht.R` and `R/helpers.R` (3 calls), `R/glht.R` and `R/mcp.R` (3 calls), `R/glht.R` and `R/mmm.R` (2 calls).

Graph: the whole call graph has 61 function names that take part in a call and 64 calls between them, set out in 6 layers with callers before what they call. 37 function names have no calls and are left out. Called by the most functions: `modelparm.default` (9), `pqglht` (5), `glht` (4), `chkdots` (4), `modelparm` (4). Calling the most functions: `expression2coef` (3), `mcp2matrix` (3), `mcp2matrix2` (3), `glht.character` (3), `glht.mlf` (3).

Most connected functions: [`modelparm.default`](/cran/multcomp.md?fn=modelparm.default&view=focus#code) 9, [`glht`](/cran/multcomp.md?fn=glht&view=focus#code) 5, [`pqglht`](/cran/multcomp.md?fn=pqglht&view=focus#code) 5, [`chkdots`](/cran/multcomp.md?fn=chkdots&view=focus#code) 4, [`chrlinfct2matrix`](/cran/multcomp.md?fn=chrlinfct2matrix&view=focus#code) 4, [`expression2coef`](/cran/multcomp.md?fn=expression2coef&view=focus#code) 4

To select another function, add ?fn=NAME to this address.

The call graph also has an address of its own: /cran/multcomp/graph.md?fn=global&view=focus

- Functions: 98
- Public exports: 15
- Lines of R code: 2,633
- Median complexity: 1

**Functions (98)**

| Function (sorted, low to high) | Kind | File | Lines | Complexity | Covered |
| --- | --- | --- | ---: | ---: | ---: |
| [`Chisqtest`](/cran/multcomp.md?fn=Chisqtest#code) | Public | R/pqfunctions.R | 1 | 1 | 100% |
| [`Ftest`](/cran/multcomp.md?fn=Ftest#code) | Public | R/pqfunctions.R | 1 | 1 | 100% |
| [`adjusted`](/cran/multcomp.md?fn=adjusted#code) | Public | R/pqfunctions.R | 90 | 8 | 13% |
| [`adjusted_calpha`](/cran/multcomp.md?fn=adjusted_calpha#code) | Public | R/pqfunctions.R | 7 | 1 | 100% |
| [`cftest`](/cran/multcomp.md?fn=cftest#code) | Public | R/methods.R | 16 | 4 | 0% |
| [`cld`](/cran/multcomp.md?fn=cld#code) | Public | R/cld.R | 2 | 1 | 100% |
| [`contrMat`](/cran/multcomp.md?fn=contrMat#code) | Public | R/contrMat.R | 137 | 28 | 23% |
| [`glht`](/cran/multcomp.md?fn=glht#code) | Public | R/glht.R | 10 | 2 | 100% |
| [`mcp`](/cran/multcomp.md?fn=mcp#code) | Public | R/mcp.R | 37 | 8 | 83% |
| [`mlf`](/cran/multcomp.md?fn=mlf#code) | Public | R/mmm.R | 6 | 1 | 0% |
| [`mmm`](/cran/multcomp.md?fn=mmm#code) | Public | R/mmm.R | 8 | 2 | 0% |
| [`modelparm`](/cran/multcomp.md?fn=modelparm#code) | Public | R/helpers.R | 2 | 1 | 100% |

This page lists 1 to 12 of 98 functions. [Next](/cran/multcomp.md?sort=name&order=asc&fpage=2#functions)

**Size and composition**

#### Lines by kind (10,306)

| Kind | Lines | Share |
| --- | ---: | ---: |
| R code | 2,633 | 26% |
| Tests | 4,019 | 39% |
| Documentation | 1,596 | 15% |
| Guides | 2,058 | 20% |

#### Lines by language

| Language | Lines | Share |
| --- | ---: | ---: |
| Other | 3,421 | 33% |
| R | 3,303 | 32% |
| Vignettes | 1,986 | 19% |
| Rd | 1,596 | 16% |

Languages are counted from file extensions.

- Files: 108
- R functions: 98
- Object systems: S3: 39 methods

**Complexity**

- Median: 1
- Mean: 4.49
- Highest: 73
- Median lines per function: 9

_About complexity: Cyclomatic complexity counts the independent paths through a function: 1 is a straight line, higher is harder to test. R functions only._

**Call graph figures**

- R functions: 98
- Calls: 64
- Unconnected: 37
- Groups: 5

**Growth (112 releases)**

Total lines by release: from 2,867 (on 19 Jun 2002) to 10,306 (on 21 Aug 2026). The lowest is 2,867 and the highest is 10,954.

**Release changes**

[Both releases side by side](/cran/multcomp/compare/1.4-31...1.4-32.md)

**1.4-31 to 1.4-32**, 12 Jul 2026 to 21 Aug 2026

- Files changed: 24
- Lines added: 64
- Lines deleted: 51
- Exports: No change

**Changed measures (7)**

| Measure | Subject | Before | After |
| --- | --- | ---: | ---: |
| Total lines | Structure | 10,301 | 10,306 |
| Lines of R code | Structure | 2,631 | 2,633 |
| Lines of tests | Structure | 4,018 | 4,019 |
| Lines of documentation | Documentation | 1,594 | 1,596 |
| Arguments documented | Documentation | 78% | 81% |
| Test lines per line of code | Testing | 1.53 | 1.53 |
| Lines per function (mean) | Complexity | 24.47 | 24.49 |

**Most changed files (12 of 24)**

| File | Lines added | Lines deleted |
| --- | ---: | ---: |
| `MD5` | 23 | 23 |
| `tests/bugfix.Rout.save` | 4 | 5 |
| `inst/NEWS.Rd` | 8 | 0 |
| `DESCRIPTION` | 3 | 3 |
| `R/methods.R` | 3 | 3 |
| `tests/Examples/multcomp-Ex.Rout.save` | 3 | 3 |
| `tests/regtest-Tukey.Rout.save` | 2 | 2 |
| `tests/regtest-anova.Rout.save` | 2 | 2 |
| `tests/regtest-interface-extended.Rout.save` | 2 | 2 |
| `tests/regtest-interface.Rout.save` | 2 | 2 |
| `tests/regtest-lme.Rout.save` | 2 | 2 |
| `tests/regtest-mmm.Rout.save` | 2 | 2 |

## Tests

[Method](/about/coverage.md)

The tests ran and coverage was measured.

- Lines run by tests: 58.5%
- Expressions run by tests: 56.9%
- Exports named in tests: 93.3%

**Coverage by file (13)**

13 files measured, least covered first.

| File | Lines | Run by tests | Not run | Coverage |
|---|---:|---:|---:|---:|
| `R/mmm.R`, 9 functions | 73 | 0 | 73 | 0% |
| `R/maxsets.R`, 4 functions | 33 | 0 | 33 | 0% |
| `R/contrMat.R`, 1 function | 100 | 23 | 77 | 23% |
| `R/helpers.R`, 33 functions | 167 | 77 | 90 | 46% |
| `R/mcp.R`, 5 functions | 264 | 126 | 138 | 48% |
| `R/pqfunctions.R`, 8 functions | 196 | 106 | 90 | 54% |
| `R/cld.R`, 10 functions | 223 | 127 | 96 | 57% |
| `R/methods.R`, 5 functions | 54 | 41 | 13 | 76% |
| `R/glht.R`, 6 functions | 64 | 52 | 12 | 81% |
| `R/parm.R`, 3 functions | 22 | 18 | 4 | 82% |
| `R/expressions.R`, 7 functions | 377 | 316 | 61 | 84% |
| `R/print.R`, 5 functions | 94 | 79 | 15 | 84% |
| `R/plot.R`, 2 functions | 38 | 32 | 6 | 84% |

**Coverage run**

- Lines counted: 1,705
- Lines the tests ran: 997
- Tests passed: Yes
- Measured with: covr 3.6.5 on R 4.6.1

**Test suite**

- Has tests: Yes
- Test frameworks: R scripts, 9 script files
- Lines of tests: 4,019
- Test lines per line of code: 1.53

## Documentation

[Method](/about/code-metrics.md)

- Exports documented: 100%
- Arguments documented: 81%
- Return value documented: 100%
- Help pages with examples: 80%
- Examples run in checks: 100%

**Guides (3)**

- [Additional Examples](https://cran.r-project.org/web/packages/multcomp/vignettes/multcomp-examples.pdf)
- [Simultaneous Inference in General Parametric Models](https://cran.r-project.org/web/packages/multcomp/vignettes/generalsiminf.pdf)
- [Supplementary Material for "A re-evaluation of the model selection procedure in Pollet \& Nettle (2009)"](https://cran.r-project.org/web/packages/multcomp/vignettes/chfls1.pdf)

**Other documentation**

- README: No
- Release notes file: Yes
- Help pages: 20
- Lines of documentation: 1,596

## Datasets

[Method](/about/objects.md)

| Dataset | Size | Columns |
| --- | --- | --- |
| [adevent](/cran/multcomp/data/adevent.md), Adverse Events Data | 160 × 29 | E1, E2, E3, E4, E5, E6 and 23 more |
| [cholesterol](/cran/multcomp/data/cholesterol.md), Cholesterol Reduction Data Set | 50 × 2 | trt, response |
| [cml](/cran/multcomp/data/cml.md), Chronic Myelogenous Leukemia survival data. | 507 × 7 | center, treatment, sex, age, riskgroup, status and 1 more |
| [detergent](/cran/multcomp/data/detergent.md), Detergent Durability Data Set | 50 × 3 | detergent, block, plates |
| [fattyacid](/cran/multcomp/data/fattyacid.md), Fatty Acid Content of Bacillus simplex. | 93 × 2 | PE, FA |
| [litter](/cran/multcomp/data/litter.md), Litter Weights Data Set | 74 × 4 | dose, weight, gesttime, number |
| [mtept](/cran/multcomp/data/mtept.md), Multiple Endpoints Data | 111 × 5 | treatment, E1, E2, E3, E4 |
| [recovery](/cran/multcomp/data/recovery.md), Recovery Time Data Set | 41 × 2 | blanket, minutes |
| [sbp](/cran/multcomp/data/sbp.md), Systolic Blood Pressure Data | 69 × 3 | gender, sbp, age |
| [trees513](/cran/multcomp/data/trees513.md), Frankonian Tree Damage Data | 2,700 × 4 | damage, species, lattice, plot |
| [waste](/cran/multcomp/data/waste.md), Industrial Waste Data Set | 30 × 3 | temp, envir, waste |

## People

[Method](/about/author-identity.md)

- [Torsten Hothorn](/people/Torsten+Hothorn.md): Maintainer since 0.2-6 (2002), author. ORCID https://orcid.org/0000-0001-8301-0471
- [Frank Bretz](/people/Frank+Bretz.md): Author
- [Richard M. Heiberger](/people/Richard+M.+Heiberger.md): Contributor
- [Christian B. Pipper](/people/Christian+B.+Pipper.md): Contributor
- [Christian Ritz](/people/Christian+Ritz.md): Contributor
- [Susan Scheibe](/people/Susan+Scheibe.md): Contributor
- [Andre Schuetzenmeister](/people/Andre+Schuetzenmeister.md): Contributor
- [Peter Westfall](/people/Peter+Westfall.md): Author

**Earlier names (1)**

- Peter Westfal

## Repository

[Method](/about/repo-signals.md#figures)

[thothorn](/repos/codeberg.org/thothorn.md) / [multcomp](https://codeberg.org/thothorn/multcomp) on codeberg.org

- Stars: 0
- Forks: 0
- Open issues: 0
- Last commit: 21 Aug 2026

**Activity**

- Commits: 291
- Open pull requests: 0
- Tagged releases: –
- Latest tagged release: –
- In development: –
- Issues closed in: –
- Pull requests closed in: –
- Pull requests merged: –
- Created: 21 May 2026
- Licence file reads as: –

Development practices and AI coding tools are not collected from Codeberg yet.

## History

[Method](/about/archive.md)

The line runs from the first release of multcomp on 20 Jun 2002 to 28 Oct 2026 and marks all 112 of its releases.

| Version | Released | R |
| --- | --- | ---: |
| [1.4-32](/cran/multcomp/v/1.4-32.md) current | 21 Aug 2026 | 4.6.1 |
| [1.4-31](/cran/multcomp/v/1.4-31.md) | 12 Jul 2026 | 4.6.1 |
| [1.4-30](/cran/multcomp/v/1.4-30.md) | 9 Mar 2026 | 4.5.2 |
| [1.4-29](/cran/multcomp/v/1.4-29.md) | 20 Oct 2025 | 4.5.1 |
| [1.4-28](/cran/multcomp/v/1.4-28.md) | 29 Jan 2025 | 4.4.2 |
| [1.4-26](/cran/multcomp/v/1.4-26.md) | 18 Jul 2024 | 4.4.1 |
| [1.4-25](/cran/multcomp/v/1.4-25.md) | 20 Jun 2023 | 4.3.1 |
| [1.4-24](/cran/multcomp/v/1.4-24.md) | 14 Jun 2023 | 4.3.0 |

**Earlier versions (104)**

| Version | Released | R |
| --- | --- | ---: |
| [1.4-23](/cran/multcomp/v/1.4-23.md) | 9 Mar 2023 | 4.2.2 |
| [1.4-22](/cran/multcomp/v/1.4-22.md) | 10 Feb 2023 | 4.2.2 |
| [1.4-20](/cran/multcomp/v/1.4-20.md) | 7 Aug 2022 | 4.2.1 |
| [1.4-19](/cran/multcomp/v/1.4-19.md) | 26 Apr 2022 | 4.2.0 |
| [1.4-18](/cran/multcomp/v/1.4-18.md) | 4 Jan 2022 | 4.1.2 |
| [1.4-17](/cran/multcomp/v/1.4-17.md) | 29 Apr 2021 | 4.0.5 |
| [1.4-16](/cran/multcomp/v/1.4-16.md) | 8 Feb 2021 | 4.0.3 |
| [1.4-15](/cran/multcomp/v/1.4-15.md) | 14 Nov 2020 | 4.0.3 |
| [1.4-14](/cran/multcomp/v/1.4-14.md) | 23 Sep 2020 | 4.0.2 |
| [1.4-13](/cran/multcomp/v/1.4-13.md) | 8 Apr 2020 | 3.6.3 |
| [1.4-12](/cran/multcomp/v/1.4-12.md) | 10 Jan 2020 | 3.6.2 |
| [1.4-11](/cran/multcomp/v/1.4-11.md) | 10 Dec 2019 | 3.6.1 |
| [1.4-10](/cran/multcomp/v/1.4-10.md) | 5 Mar 2019 | 3.5.2 |
| [1.4-8](/cran/multcomp/v/1.4-8.md) | 8 Nov 2017 | 3.4.2 |
| [1.4-7](/cran/multcomp/v/1.4-7.md) | 7 Sep 2017 | 3.4.1 |
| [1.4-6](/cran/multcomp/v/1.4-6.md) | 14 Jul 2016 | 3.3.1 |
| [1.4-5](/cran/multcomp/v/1.4-5.md) | 4 May 2016 | 3.3.0 |
| [1.4-4](/cran/multcomp/v/1.4-4.md) | 17 Feb 2016 | 3.2.3 |
| [1.4-3](/cran/multcomp/v/1.4-3.md) | 3 Feb 2016 | 3.2.3 |
| [1.4-2](/cran/multcomp/v/1.4-2.md) | 19 Jan 2016 | 3.2.3 |
| [1.4-1](/cran/multcomp/v/1.4-1.md) | 23 Jul 2015 | 3.2.1 |
| [1.4-0](/cran/multcomp/v/1.4-0.md) | 5 Mar 2015 | 3.1.2 |
| [1.3-9](/cran/multcomp/v/1.3-9.md) | 18 Feb 2015 | 3.1.2 |
| [1.3-8](/cran/multcomp/v/1.3-8.md) | 1 Dec 2014 | 3.1.2 |
| [1.3-7](/cran/multcomp/v/1.3-7.md) | 2 Oct 2014 | 3.1.1 |
| [1.3-6](/cran/multcomp/v/1.3-6.md) | 18 Aug 2014 | 3.1.1 |
| [1.3-5](/cran/multcomp/v/1.3-5.md) | 24 Jul 2014 | 3.1.1 |
| [1.3-4](/cran/multcomp/v/1.3-4.md) | 9 Jul 2014 | 3.1.0 |
| [1.3-3](/cran/multcomp/v/1.3-3.md) | 22 Apr 2014 | 3.1.0 |
| [1.3-2](/cran/multcomp/v/1.3-2.md) | 12 Feb 2014 | 3.0.2 |
| [1.3-1](/cran/multcomp/v/1.3-1.md) | 1 Nov 2013 | 3.0.2 |
| [1.3-0](/cran/multcomp/v/1.3-0.md) | 7 Oct 2013 | 3.0.2 |
| [1.2-21](/cran/multcomp/v/1.2-21.md) | 20 Sep 2013 | 3.0.1 |
| [1.2-20](/cran/multcomp/v/1.2-20.md) | 2 Sep 2013 | 3.0.1 |
| [1.2-19](/cran/multcomp/v/1.2-19.md) | 6 Aug 2013 | 3.0.1 |
| [1.2-18](/cran/multcomp/v/1.2-18.md) | 17 May 2013 | 3.0.1 |
| [1.2-17](/cran/multcomp/v/1.2-17.md) | 15 Mar 2013 | 2.15.3 |
| [1.2-15](/cran/multcomp/v/1.2-15.md) | 12 Jan 2013 | 2.15.2 |
| [1.2-14](/cran/multcomp/v/1.2-14.md) | 11 Oct 2012 | 2.15.1 |
| [1.2-13](/cran/multcomp/v/1.2-13.md) | 10 Sep 2012 | 2.15.1 |
| [1.2-12](/cran/multcomp/v/1.2-12.md) | 9 Mar 2012 | 2.14.2 |
| [1.2-10](/cran/multcomp/v/1.2-10.md) | 17 Feb 2012 | 2.14.1 |
| [1.2-9](/cran/multcomp/v/1.2-9.md) | 11 Jan 2012 | 2.14.1 |
| [1.2-8](/cran/multcomp/v/1.2-8.md) | 26 Oct 2011 | 2.13.2 |
| [1.2-7](/cran/multcomp/v/1.2-7.md) | 23 Jul 2011 | 2.13.1 |
| [1.2-6](/cran/multcomp/v/1.2-6.md) | 2 May 2011 | 2.13.0 |
| [1.2-5](/cran/multcomp/v/1.2-5.md) | 10 Jan 2011 | 2.12.1 |
| [1.2-4](/cran/multcomp/v/1.2-4.md) | 3 Nov 2010 | 2.12.0 |
| [1.2-3](/cran/multcomp/v/1.2-3.md) | 24 Sep 2010 | 2.11.1 |
| [1.2-2](/cran/multcomp/v/1.2-2.md) | 15 Sep 2010 | 2.11.1 |
| [1.2-1](/cran/multcomp/v/1.2-1.md) | 13 Sep 2010 | 2.11.1 |
| [1.2-0](/cran/multcomp/v/1.2-0.md) | 11 Aug 2010 | 2.11.1 |
| [1.1-7](/cran/multcomp/v/1.1-7.md) | 18 May 2010 | 2.11.0 |
| [1.1-6](/cran/multcomp/v/1.1-6.md) | 25 Feb 2010 | 2.10.1 |
| [1.1-5](/cran/multcomp/v/1.1-5.md) | 11 Feb 2010 | 2.10.1 |
| [1.1-4](/cran/multcomp/v/1.1-4.md) | 21 Jan 2010 | 2.10.1 |
| [1.1-3](/cran/multcomp/v/1.1-3.md) | 21 Dec 2009 | 2.10.1 |
| [1.1-2](/cran/multcomp/v/1.1-2.md) | 10 Sep 2009 | 2.9.2 |
| [1.1-1](/cran/multcomp/v/1.1-1.md) | 18 Jul 2009 | 2.9.1 |
| [1.1-0](/cran/multcomp/v/1.1-0.md) | 8 Jun 2009 | 2.9.0 |
| [1.0-8](/cran/multcomp/v/1.0-8.md) | 26 May 2009 | 2.9.0 |
| [1.0-7](/cran/multcomp/v/1.0-7.md) | 11 Feb 2009 | 2.8.1 |
| [1.0-6](/cran/multcomp/v/1.0-6.md) | 21 Jan 2009 | 2.8.1 |
| [1.0-5](/cran/multcomp/v/1.0-5.md) | 13 Jan 2009 | 2.8.1 |
| [1.0-4](/cran/multcomp/v/1.0-4.md) | 7 Jan 2009 | 2.8.1 |
| [1.0-3](/cran/multcomp/v/1.0-3.md) | 15 Oct 2008 | 2.7.2 |
| [1.0-2](/cran/multcomp/v/1.0-2.md) | 5 Jul 2008 | 2.7.1 |
| [1.0-0](/cran/multcomp/v/1.0-0.md) | 1 Apr 2008 | 2.6.2 |
| [0.993-2](/cran/multcomp/v/0.993-2.md) | 5 Mar 2008 | 2.6.2 |
| [0.993-1](/cran/multcomp/v/0.993-1.md) | 16 Feb 2008 | 2.6.2 |
| [0.992-8](/cran/multcomp/v/0.992-8.md) | 20 Dec 2007 | 2.6.1 |
| [0.992-6](/cran/multcomp/v/0.992-6.md) | 18 Oct 2007 | 2.6.0 |
| [0.992-5](/cran/multcomp/v/0.992-5.md) | 8 Oct 2007 | 2.6.0 |
| [0.992-4](/cran/multcomp/v/0.992-4.md) | 23 Jul 2007 | 2.5.1 |
| [0.992-2](/cran/multcomp/v/0.992-2.md) | 7 Jul 2007 | 2.5.1 |
| [0.992-1](/cran/multcomp/v/0.992-1.md) | 21 Jun 2007 | 2.5.0 |
| [0.991-9](/cran/multcomp/v/0.991-9.md) | 23 Mar 2007 | 2.4.1 |
| [0.991-8](/cran/multcomp/v/0.991-8.md) | 22 Jan 2007 | 2.4.1 |
| [0.991-7](/cran/multcomp/v/0.991-7.md) | 19 Dec 2006 | 2.4.1 |
| [0.991-5](/cran/multcomp/v/0.991-5.md) | 10 Dec 2006 | 2.4.0 |
| [0.991-4](/cran/multcomp/v/0.991-4.md) | 7 Dec 2006 | 2.4.0 |
| [0.991-3](/cran/multcomp/v/0.991-3.md) | 30 Nov 2006 | 2.4.0 |
| [0.991-2](/cran/multcomp/v/0.991-2.md) | 27 Oct 2006 | 2.4.0 |
| [0.991-1](/cran/multcomp/v/0.991-1.md) | 23 Oct 2006 | 2.4.0 |
| [0.4-8](/cran/multcomp/v/0.4-8.md) | 19 Nov 2004 | 2.0.1 |
| [0.4-7](/cran/multcomp/v/0.4-7.md) | 4 Aug 2004 | 1.9.1 |
| [0.4-6](/cran/multcomp/v/0.4-6.md) | 8 Mar 2004 | 1.8.1 |
| [0.4-5](/cran/multcomp/v/0.4-5.md) | 2 Mar 2004 | 1.8.1 |
| [0.4-4](/cran/multcomp/v/0.4-4.md) | 19 Dec 2003 | 1.8.1 |
| [0.4-2](/cran/multcomp/v/0.4-2.md) | 12 Sep 2003 | 1.7.1 |
| [0.4-1](/cran/multcomp/v/0.4-1.md) | 28 Aug 2003 | 1.7.1 |
| [0.4-0](/cran/multcomp/v/0.4-0.md) | 15 Aug 2003 | 1.7.1 |
| [0.3-11](/cran/multcomp/v/0.3-11.md) | 23 Apr 2003 | 1.7.0 |
| [0.3-10](/cran/multcomp/v/0.3-10.md) | 25 Mar 2003 | 1.6.2 |
| [0.3-9](/cran/multcomp/v/0.3-9.md) | 19 Feb 2003 | 1.6.2 |
| [0.3-8](/cran/multcomp/v/0.3-8.md) | 19 Feb 2003 | 1.6.2 |
| [0.3-7](/cran/multcomp/v/0.3-7.md) | 13 Feb 2003 | 1.6.2 |
| [0.3-6](/cran/multcomp/v/0.3-6.md) | 4 Feb 2003 | 1.6.2 |
| [0.3-5](/cran/multcomp/v/0.3-5.md) | 18 Dec 2002 | 1.6.1 |
| [0.3-4](/cran/multcomp/v/0.3-4.md) | 28 Nov 2002 | 1.6.1 |
| [0.3-3](/cran/multcomp/v/0.3-3.md) | 23 Oct 2002 | 1.6.0 |
| [0.3-2](/cran/multcomp/v/0.3-2.md) | 30 Sep 2002 | 1.5.1 |
| [0.3-0](/cran/multcomp/v/0.3-0.md) | 23 Jul 2002 | 1.5.1 |
| [0.2-6](/cran/multcomp/v/0.2-6.md) | 20 Jun 2002 | 1.5.1 |

**Release notes (1.4-32)**

- Additional arguments to `cftest` are now fed to `glht`, allowing specification of `coef.` or `vcov.`.
- Shaffer adjustments are now insensitive to numerical tolerances

---

R Observatory is independent of the R Project, CRAN and Bioconductor. The same page for people is at /cran/multcomp, and every address is listed at /llms.txt.
