| Title: | Estimation of Mean Costs in Censored Data |
|---|---|
| Description: | Implementation of estimators for inferring the mean of censored cost data. Including the estimators BT from Bang and Tsiatis (2000) <doi:10.1093/biomet/87.2.329> and ZT from Zhao and Tian (2001) <doi:10.1111/j.0006-341X.2001.01002.x>. |
| Authors: | Lars Boerty [aut, cre] (ORCID: <https://orcid.org/0000-0002-3715-8528>), Rasmus Broendum [aut] (ORCID: <https://orcid.org/0000-0001-5537-6767>), Martin Boegsted [aut] (ORCID: <https://orcid.org/0000-0001-9192-1814>), Haematology Research Unit - Aalborg [cph] |
| Maintainer: | Lars Boerty <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 0.1.1 |
| Built: | 2026-06-09 08:20:06 UTC |
| Source: | https://github.com/clinda-aau/ccostr |
This function calculates the mean cost for right-censored cost data over a period of L time units (days, months, years,...)
ccmean(x, L = max(x$surv), addInterPol = 0)ccmean(x, L = max(x$surv), addInterPol = 0)
x |
A dataframe with columns: id, cost, delta and surv. If Cost history is available it can be specified by: start and stop, |
L |
Limit. Mean cost is calculated up till L, if not specified L = max(surv) |
addInterPol |
This parameter affects the interpolation of cost between two observed times. Defaults to zero. |
The function returns four estimates. The first two are simple and biased downwards, and included for comparison. The estimates are:
- AS: "Available Sample estimator" - The simple sample mean
- CC: "Complete Case estimator" - The mean of fully observed cases
- BT: "Weighted Complete Case estimator" - Bang and Tsiatis's estimator
- ZT: "Weighted Available estimator" - Zhao and Tian's estimator
The function needs the following in a dataframe:
- id: The id separating each individual
- cost: The total cost, or if start and stop provided the specific cost
- start: Start of cost
- stop: End of cost, if one time cost then start = stop
- delta: Event variable, 1 = event, 0 = no event
- surv: Survival
An object of class "ccobject".
Bang H, Tsiatis AA (2000). “Estimating medical costs with censored data.” Biometrika, 87(2), 329–343. ISSN 00063444. doi:10.1093/biomet/87.2.329.
Zhao H, Tian L (2001). “On Estimating Medical Cost and Incremental Cost-Effectiveness Ratios with Censored Data.” Biometrics, 57(4), 1002–1008. ISSN 0006341X. doi:10.1111/j.0006-341X.2001.01002.x.
hcost ccmean(hcost, L = 1461, addInterPol = 1)hcost ccmean(hcost, L = 1461, addInterPol = 1)
Simulated data from the stata hcost package
data(hcost)data(hcost)
A data frame with 9882 rows and 7 variables:
id seperating individuals
start of specified cost
end of specified cost
cost in given period
treatment variable
event variable, 0 = censored
survival period
Chen S, Rolfes J, Zhao H (2015). “Estimation of Mean Health Care Costs and Incremental Cost-effectiveness Ratios with Possibly Censored Data.” The Stata Journal: Promoting communications on statistics and Stata, 15(3), 698–711. ISSN 1536-867X. doi:10.1177/1536867X1501500305. The Stata Journal.
data(hcost)data(hcost)
Adding to the generic plot function
## S3 method for class 'ccobject' plot(x, ...)## S3 method for class 'ccobject' plot(x, ...)
x |
The ccobject |
... |
passthrough |
a plot
Adding to the generic print function
## S3 method for class 'ccobject' print(x, ...)## S3 method for class 'ccobject' print(x, ...)
x |
The ccobject |
... |
passthrough |
a plot
This function can be used to demonstrate the bias and coverage of the estimators in the ccmean function
simCostData(n = 100, dist = "unif", censor = "light", cdist = "exp", L = 10)simCostData(n = 100, dist = "unif", censor = "light", cdist = "exp", L = 10)
n |
Number of individuals to simulate |
dist |
Survival distribution either "unif" = unif(0,10) o r "exp" = exp (1/6) |
censor |
Censoring "light" ~ 25% or "heavy" ~ 40%, changes a bit depending on cdist |
cdist |
Distribution used to censor, "exp" exponential or "unif" uniform |
L |
Number of years to summarize over |
The function simulates survival times from either an uniform distribution or an exponential distribution, and a cost history. There are two options for censoring, heavy (~40 light (~25
Simulation of censored cost
Lin DY, Feuer EJ, Etzioni R, Wax Y (1997). “Estimating Medical Costs from Incomplete Follow-Up Data.” Biometrics, 53(2), 419. ISSN 0006341X. doi:10.2307/2533947.
# The simulated data can be used to show how the estimators perform simCostData(n = 100, dist = "unif", censor = "light", cdist = "exp", L = 10)# The simulated data can be used to show how the estimators perform simCostData(n = 100, dist = "unif", censor = "light", cdist = "exp", L = 10)