The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
The eq5dsuite package provides standardised tools for
calculating EQ-5D preference-based values and analysing EQ-5D data
following the recommendations of Devlin et al. (2020). This vignette
introduces the core workflow: loading the package, exploring available
value sets, and calculating EQ-5D values from profile data.
Install the released version from CRAN:
Install the development version from GitHub:
The package includes country-specific value sets for the EQ-5D-3L,
EQ-5D-5L, and EQ-5D-Y-3L instruments. Use eqvs_display() to
see all available sets:
# List all available EQ-5D-3L value sets
eqvs_display(version = "3L")
#> Available national value sets for 3L version:
#> Version Name_short Country_code VS_code
#> 3L Argentina AR AR_TTO
#> 3L Argentina (VAS) AR AR_VAS
#> 3L Australia AU AU
#> 3L Belgium (VAS) BE BE_VAS
#> 3L Bermuda BM BM
#> 3L Brazil BR BR
#> 3L Canada CA CA
#> 3L Chile CL CL
#> 3L China CN CN
#> 3L Germany DE DE_TTO
#> 3L Germany (VAS) DE DE_VAS
#> 3L Denmark DK DK
#> 3L Spain ES ES
#> 3L Finland (VAS) FI FI_VAS
#> 3L France FR FR
#> 3L Hungary HU HU
#> 3L Iran IR IR
#> 3L Italy IT IT
#> 3L Jordan JO JO
#> 3L Japan JP JP
#> 3L Korea KR KR
#> 3L Sri Lanka LK LK
#> 3L Malaysia (VAS) MY MY_VAS
#> 3L Netherlands_2006 NL NL_2006
#> 3L New Zealand (VAS) NZ NZ_VAS
#> 3L Pakistan PK PK
#> 3L Poland PL PL
#> 3L Portugal PT PT
#> 3L Sweden SE SE
#> 3L Singapore SG SG
#> 3L Slovenia SI SI_TTO
#> 3L Slovenia (VAS) SI SI_VAS
#> 3L Thailand TH TH
#> 3L Tunisia TN TN
#> 3L Trinidad and Tobago TT TT
#> 3L Taiwan TW TW
#> 3L United Kingdom UK UK
#> 3L USA US US
#> 3L Zimbabwe ZW ZW
#> 3L Netherlands_2026 NL NL_2026
#> doi
#> 10.1111/j.1524-4733.2008.00468.x
#> 10.1111/j.1524-4733.2008.00468.x
#> 10.1016/j.jval.2011.04.009
#> 10.1007/s10198-009-0167-0
#> 10.1007/s10198-024-01701-2
#> 10.1177/0272989X15613521
#> 10.1371/journal.pone.0031115
#> 10.1016/j.jval.2011.09.002.
#> 10.1016/j.jval.2014.05.007
#> 10.1007/s10198-004-0264-z
#> https://eq-5dpublications.euroqol.o
#> 10.1177/1403494809105287
#> 10.1177/0272989X0102100102
#> https://eq-5dpublications.euroqol.o
#> 10.1007/s10198-011-0351-x
#> 10.1016/j.jval.2020.03.019
#> 10.5812/ircmj.21584
#> 10.1016/j.jval.2013.04.008
#> 10.1007/s10198-024-01712-z
#> 10.1002/hec.673
#> 10.1111/j.1524-4733.2009.00579.x
#> 10.1007/s11136-014-0906-2
#> 10.1016/j.jval.2011.11.024
#> 10.1002/hec.1124
#> 10.1002/hec.741
#> 10.1007/s41669-023-00437-8
#> 10.1111/j.1524-4733.2009.00596.x
#> 10.1007/s11136-013-0448-z
#> 10.1007/s11136-013-0496-4
#> 10.1007/s40273-014-0142-1
#> 10.2478/sjph-2020-0002
#> 10.2478/sjph-2020-0003
#> 10.1016/j.jval.2011.06.005
#> 10.1007/s11136-020-02730-z
#> 10.1016/j.vhri.2016.07.010
#> 10.1016/j.jfma.2012.12.015
#> 10.1097/00005650-199711000-00002
#> 10.1097/00005650-200503000-00003
#> 10.1186/1478-7954-1-11
#> 10.1007/s10198-025-01892-2
#> No user-defined value sets available.The most common workflow uses a data frame with one column per EQ-5D
dimension. The dim.names argument maps your column names to
the five dimensions in the standard order (mobility, self-care, usual
activities, pain/discomfort, anxiety/depression):
# Example data with EQ-5D-3L responses
eq5d3l_data <- data.frame(
id = 1:5,
mo = c(1, 2, 1, 3, 2),
sc = c(1, 1, 2, 2, 1),
ua = c(1, 2, 1, 3, 2),
pd = c(2, 2, 1, 3, 3),
ad = c(1, 1, 2, 2, 1)
)
# Calculate EQ-5D-3L values using the UK value set
eq5d3l_data$value <- eq5d3l(
eq5d3l_data,
country = "UK",
dim.names = c("mo", "sc", "ua", "pd", "ad")
)
eq5d3l_data
#> id mo sc ua pd ad value
#> 1 1 1 1 1 2 1 0.7960000
#> 2 2 2 1 2 2 1 0.6910000
#> 3 3 1 2 1 1 2 0.7440001
#> 4 4 3 2 3 3 2 -0.3190000
#> 5 5 2 1 2 3 1 0.1590000eq5d5l_data <- data.frame(
id = 1:5,
mo = c(1, 2, 3, 1, 2),
sc = c(1, 1, 2, 1, 3),
ua = c(2, 1, 3, 1, 2),
pd = c(2, 3, 2, 1, 4),
ad = c(1, 2, 1, 3, 2)
)
eq5d5l_data$value <- eq5d5l(
eq5d5l_data,
country = "IT",
dim.names = c("mo", "sc", "ua", "pd", "ad")
)
eq5d5l_data
#> id mo sc ua pd ad value
#> 1 1 1 1 2 2 1 0.903
#> 2 2 2 1 1 3 2 0.817
#> 3 3 3 2 3 2 1 0.779
#> 4 4 1 1 1 1 3 0.891
#> 5 5 2 3 2 4 2 0.446eq5dy3l_data <- data.frame(
id = 1:5,
mo = c(1, 2, 1, 2, 3),
sc = c(1, 1, 2, 1, 2),
ua = c(2, 1, 1, 3, 2),
pd = c(1, 2, 3, 2, 1),
ad = c(2, 1, 2, 1, 3)
)
eq5dy3l_data$value <- eq5dy3l(
eq5dy3l_data,
country = "SI",
dim.names = c("mo", "sc", "ua", "pd", "ad")
)
eq5dy3l_data
#> id mo sc ua pd ad value
#> 1 1 1 1 2 1 2 0.777
#> 2 2 2 1 1 2 1 0.755
#> 3 3 1 2 1 3 2 0.374
#> 4 4 2 1 3 2 1 0.433
#> 5 5 3 2 2 1 3 0.163If a value set is not yet included in the package, you can add your
own using eqvs_add():
# Create a custom value set data frame
custom_vs <- data.frame(
state = make_all_EQ_indexes(version = "3L"),
MY_VS = runif(243)
)
# Register it temporarily for this session
eqvs_add(
custom_vs,
version = "3L",
country = "My Country",
countryCode = "MC",
VSCode = "MC",
description = "Custom value set for demonstration",
saveOption = 1
)
# Use the custom value set
eq5d3l(c(11111, 12321), country = "MC")New EQ-5D value sets are published regularly. Use
update_value_sets() to check for and install new value sets
from the online repository:
vignette("analysing-eq5d-data") — complete analytical
workflow using NHS PROMs datavignette("crosswalk-methods") — when and how to use
crosswalk methodsvignette("custom-value-sets") — adding and managing
custom value sets?eq5dsuite — full package documentationThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.