Description
Statistical methods to match feature vectors between multiple datasets in a one-to-one fashion. Given a fixed number of classes/distributions, for each unit, exactly one vector of each class is observed without label. The goal is to label the feature vectors using each label exactly once so to produce the best match across datasets, e.g. by minimizing the variability within classes. Statistical solutions based on empirical loss functions and probabilistic modeling are provided. The 'Gurobi' software and its 'R' interface package are required for one of the package functions (match.2x()) and can be obtained at <https://www.gurobi.com/> (free academic license). For more details, refer to Degras (2022) <doi:10.1080/10618600.2022.2074429> "Scalable feature matching for large data collections" and Bandelt, Maas, and Spieksma (2004) <doi:10.1057/palgrave.jors.2601723> "Local search heuristics for multi-index assignment problems with decomposable costs".
Downloads
261
Last 30 days
18754th
640
Last 90 days
2.3K
Last year
Trend: +46.6% (30d vs prior 30d)
0
Last 30 days
23
Last 90 days
96
Last year
Trend: -100% (30d vs prior 30d)
5
Last 7 days
19
Last 30 days
1
All-time
autoCRAN-only: this name is served only by autoCRAN, so the count is exact.
CRAN Check Status
Show all 13 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | NOTE |
| r-devel-linux-x86_64-debian-gcc | NOTE |
| r-devel-linux-x86_64-fedora-clang | NOTE |
| r-devel-linux-x86_64-fedora-gcc | NOTE |
| r-devel-windows-x86_64 | NOTE |
| r-oldrel-macos-arm64 | NOTE |
| r-oldrel-macos-x86_64 | NOTE |
| r-oldrel-windows-x86_64 | NOTE |
| r-patched-linux-x86_64 | NOTE |
| r-release-linux-x86_64 | NOTE |
| r-release-macos-arm64 | NOTE |
| r-release-macos-x86_64 | NOTE |
| r-release-windows-x86_64 | NOTE |
Check details (15 non-OK)
CRAN incoming feasibility
Maintainer: ‘David Degras <david.degras@umb.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: person(given = "David",
family = "Degras",
role = c("aut", "cre"),
email = "david.degras@umb.edu")
as necessary.
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
CRAN incoming feasibility
Maintainer: ‘David Degras <david.degras@umb.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: person(given = "David",
family = "Degras",
role = c("aut", "cre"),
email = "david.degras@umb.edu")
as necessary.
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of pairs of elements in \eqn{S} (out of all pairs) that are either concordant in both \eqn{X} and \eqn{Y} (i.e., they belong to the same member of \eqn{X} and to the same member of \eqn{Y}) or discordant (i.e., not concordant) in both \eqn{X} and {Y}.
| ^
checkRd: (-1) predict.matchFeat.Rd:21: Lost braces
21 | The function \code{predict.matchFeat} finds the best matching for new feature vectors relative to an existing set of cluster/class centers. If code{object} results from a call to \code{\link{match.gaussmix}}, the same function is used for prediction (with fixed mean vectors and covariance matrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Check History
NOTE 0 OK · 14 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 10, 2026
CRAN incoming feasibility
Maintainer: ‘David Degras <david.degras@umb.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: person(given = "David",
family = "Degras",
role = c("aut", "cre"),
email = "david.degras@umb.edu")
as necessary.
CRAN incoming feasibility
Maintainer: ‘David Degras <david.degras@umb.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: person(given = "David",
family = "Degras",
role = c("aut", "cre"),
email = "david.degras@umb.edu")
as necessary.
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
Rd files
checkRd: (-1) Rand.index.Rd:22: Lost braces; missing escapes or markup?
22 | The two vectors \code{x} and \code{y} must have equal length. Given a set \eqn{S} and two partitions \eqn{X} and \eqn{Y} of \eqn{S}, the Rand index is the proportion of
...[truncated]...
atrices). In other cases, the function \code{\link{match.template}} is used for prediction.
| ^
package dependencies
Package suggested but not available for checking: ‘gurobi’
package dependencies
Package suggested but not available for checking: ‘gurobi’
package dependencies
Package suggested but not available for checking: 'gurobi'
Code
Structure
Lines of code
2,618
Files
30
Compiled share
0%
Has compiled src
No
Language breakdown
API
Exported functions
10
Internal functions
17
Recent export changes
Testing & CI
Has tests
No
Test-to-code ratio
0.00
testthat edition
–
CI present
No
CI type
[]
PR gated
No
Docs
Return-value doc rate
100%
\dontrun example ratio
7.1%
Roxygen coverage
100%
Has pkgdown
No
NEWS present
No
Health & Security signals
Informational signals; not verdicts.
on.exit coverage
–
Unsafe pattern score
0
Dep constraint coverage
0%
Secret pattern count
0
Bundled 3rd-party code
2 items
Portability & License
Min R version
3.5.0
System requirements
–
C++ standard
–
License
GPL-2
License flags
SPDX valid, OSI approved
History
Versions
1
First release
2022-12-13
Latest release
2022-12-13
Avg cadence
–
Cold removal rate
–
Dep drift
0
Per-file churn detail lives in the source pipeline: https://github.com/r-observatory/cran-code-metrics.
Dependency Network
Version History
1 trackedR Observatory began tracking this package on Mar 10, 2026; it first appeared on CRAN Dec 13, 2022. Releases before tracking aren’t shown.