Skip to content

productivity

Indices of Productivity Using Data Envelopment Analysis (DEA)

v1.1.0 · Mar 28, 2018 · GPL-3

Description

Levels and changes of productivity and profitability are measured with various indices. The package contains the multiplicatively complete Färe-Primont, Fisher, Hicks-Moorsteen, Laspeyres, Lowe, and Paasche indices, as well as the classic Malmquist productivity index. Färe-Primont and Lowe indices verify the transitivity property and can therefore be used for multilateral or multitemporal comparison. Fisher, Hicks-Moorsteen, Laspeyres, Malmquist, and Paasche indices are not transitive and are only to be used for binary comparison. All indices can also be decomposed into different components, providing insightful information on the sources of productivity and profitability changes. In the use of Malmquist productivity index, the technological change index can be further decomposed into bias technological change components. The package also allows to prohibit technological regression (negative technological change). In the case of the Fisher, Hicks-Moorsteen, Laspeyres, Paasche and the transitive Färe-Primont and Lowe indices, it is furthermore possible to rule out technological change. Deflated shadow prices can also be obtained. Besides, the package allows parallel computing as an option, depending on the user's computer configuration. All computations are carried out with the nonparametric Data Envelopment Analysis (DEA), and several assumptions regarding returns to scale are available. All DEA linear programs are implemented using 'lp_solve'.

Downloads

CRAN

371

Last 30 days

11754th

897

Last 90 days

3.4K

Last year

Trend: +64.2% (30d vs prior 30d)

r2u CRAN

0

Last 30 days

24

Last 90 days

98

Last year

Trend: -100% (30d vs prior 30d)

autoCRAN

5

Last 7 days

26

Last 30 days

0

All-time

autoCRAN-only: this name is served only by autoCRAN, so the count is exact.

CRAN Check Status

13 NOTE
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)
NOTE r-devel-linux-x86_64-debian-clang

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only):
  File ‘fareprim.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘fisher.Rd’:
    https://doi.org/10.1007/BF00158354
  File ‘hicksmoorsteen.Rd’:
    https://doi.org/10.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-debian-clang

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-debian-gcc

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only):
  File ‘fareprim.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘fisher.Rd’:
    https://doi.org/10.1007/BF00158354
  File ‘hicksmoorsteen.Rd’:
    https://doi.org/10.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-debian-gcc

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-fedora-clang

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-fedora-gcc

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-patched-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^

Check History

NOTE 0 OK · 13 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE May 11, 2026
NOTE r-devel-linux-x86_64-debian-clang

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-debian-gcc

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-fedora-clang

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-fedora-gcc

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-patched-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
WARNING 0 OK · 12 NOTE · 1 WARNING · 0 ERROR · 0 FAILURE May 10, 2026
NOTE r-devel-linux-x86_64-debian-clang

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
WARNING r-devel-linux-x86_64-debian-gcc

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-fedora-clang

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-fedora-gcc

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-patched-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE 0 OK · 14 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 10, 2026
NOTE r-devel-linux-x86_64-debian-clang

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-debian-gcc

CRAN incoming feasibility

Maintainer: ‘Yann Desjeux <yann.desjeux@inra.fr>’

Package CITATION file contains call(s) to old-style personList() or
as.personList().  Please use c() on person objects instead.

Found the following URLs which should use \doi (with the DOI name only
...[truncated]...
.1111/j.1467-9957.2010.02169.x
    https://doi.org/10.1111/j.1467-8489.2010.00512.x
  File ‘lowe.Rd’:
    https://doi.org/10.1093/ajae/aas023
  File ‘usagri.Rd’:
    https://doi.org/10.2307/1244458
    https://doi.org/10.1111/j.0002-9092.2004.00683.x
NOTE r-devel-linux-x86_64-fedora-clang

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-linux-x86_64-fedora-gcc

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-devel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-patched-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-linux-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-release-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-arm64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-macos-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^
NOTE r-oldrel-windows-x86_64

Rd files

checkRd: (-1) paasche.Rd:91: Lost braces
    91 |     \code{OSME} \tab Output-oriented scale-mix efficiency score \emph{(code{orientation = "out"})}\cr
       |                                                                            ^

Code

Structure

Lines of code

5,490

Files

33

Compiled share

0%

Has compiled src

No

Language breakdown

R 4,026 (73.3%)Docs 1,464 (26.7%)

API

Exported functions

10

Internal functions

33

Recent export changes

v1.1.0+1 hicksmoorsteen
v1.0.0+6 fisher, laspeyres, paasche +3 more

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

27.3%

Roxygen coverage

100%

Has pkgdown

No

NEWS present

Yes

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

2.15.3

System requirements

C++ standard

License

GPL-3

License flags

SPDX valid, OSI approved

History

Versions

4

First release

2016-11-14

Latest release

2018-03-28

Avg cadence

178 days

Cold removal rate

Dep drift

8

LOC over versions

v0.1.0: 1,880 LOCv0.2.0: 1,891 LOCv1.0.0: 4,490 LOCv1.1.0: 5,490 LOC

Per-file churn detail lives in the source pipeline: https://github.com/r-observatory/cran-code-metrics.

Dependency Network

Dependencies Reverse dependencies lpSolveAPI doParallel foreach iterators productivity

Version History

5 tracked
new 1.1.0 Mar 10, 2026
updated 1.1.0 ← 1.0.0 diff Mar 27, 2018
updated 1.0.0 ← 0.2.0 diff Jul 19, 2017
updated 0.2.0 ← 0.1.0 diff May 10, 2017
new 0.1.0 Nov 13, 2016