The R package LW1949 automates the steps taken in Litchfield and Wilcoxon’s (1949) manual approach to evaluating dose-effect experiments. Letting the computer do the work saves time and yields the best fit possible using the Litchfield Wilcoxon approach (by minimizing the chi-squared statistic). You can also try a brief demonstration of LW1949 in this web app.
Install the LW1949 package following these instructions. Then load the package.
library(LW1949)
Use the dataprep
function to create a data frame with the results of a dose-effect experiment. Provide information on three key input variables,
dose
),ntot
), andnfx
).conc <- c(0.0625, 0.125, 0.25, 0.5, 1, 2, 3)
numtested <- rep(8, 7)
numaffected <- c(1, 4, 4, 7, 8, 8, 8)
mydat <- dataprep(dose=conc, ntot=numtested, nfx=numaffected)
The dataprep
function puts the input variables into a data frame along with several new variables,
rec
),pfx
),log10dose
),bitpfx
),fxcateg
) identifying none (0), partial (50), and complete (100) effects, andLWkeep
) to identify observations to keep when applying Litchfield and Wilcoxon’s (1949) method (their step A).mydat
## dose ntot nfx rec pfx log10dose bitpfx fxcateg LWkeep
## 1 0.0625 8 1 1 0.125 -1.2041200 -1.150349 50 TRUE
## 2 0.1250 8 4 2 0.500 -0.9030900 0.000000 50 TRUE
## 3 0.2500 8 4 3 0.500 -0.6020600 0.000000 50 TRUE
## 4 0.5000 8 7 4 0.875 -0.3010300 1.150349 50 TRUE
## 5 1.0000 8 8 5 1.000 0.0000000 Inf 100 TRUE
## 6 2.0000 8 8 6 1.000 0.3010300 Inf 100 TRUE
## 7 3.0000 8 8 7 1.000 0.4771213 Inf 100 FALSE
Use the fitLWauto
and LWestimate
functions to fit a dose-effect relation following Litchfield and Wilcoxon’s (1949) method.
intslope <- fitLWauto(mydat)
fLW <- LWestimate(intslope, mydat)
The output from fitLWauto
is a numeric vector of length two, the estimated intercept and slope of the best fitting line on the log10-probit scale..
intslope
## Intercept Slope
## 1.726888 2.280443
The output from LWestimate
is a list with three elements,
chi
, the chi-squared test comparing observed and expected effects, including the expected effects, the “corrected” expected effects (step B in Litchfield and Wilcoxon 1949), and the contribution to the chi-squared statistic (their step C);params
, the estimated intercept and slope on the log10-probit scale; andLWest
, additional estimates calculated in the process of using Litchfield and Wilcoxon’s (1949) method (their steps D and E).fLW
## $chi
## $chi$chi
## chistat df pval
## 1.0168540 4.0000000 0.9072297
##
## $chi$contrib
## exp obscorr contrib
## [1,] 0.1540923 0.1250000 0.04394056
## [2,] 0.3697344 0.5000000 0.36716385
## [3,] 0.6383023 0.5000000 0.42306128
## [4,] 0.8509244 0.8750000 0.03110550
## [5,] 0.9579061 0.9861477 0.15158280
## [6,] 0.9920971 0.9920971 0.00000000
##
##
## $params
## Intercept Slope
## 1.726888 2.280443
##
## $LWest
## ED50 lower upper npartfx ED16 ED84
## 0.17487995 0.08724768 0.35053078 4.00000000 0.06407062 0.47733260
## S lowerS upperS Nprime fED50 fS
## 2.72948727 1.40133732 5.31642211 16.00000000 2.00440807 1.94777319
Use the predlinear
function and the fitted Litchfield and Wilcoxon model to estimate the effective doses for specified percent effects (with 95% confidence limits).
pctaffected <- c(25, 50, 99.9)
predlinear(pctaffected, fLW)
## pct ED lower upper
## [1,] 25.0 0.08850516 0.03866679 0.2025812
## [2,] 50.0 0.17487995 0.08724768 0.3505308
## [3,] 99.9 3.96133867 0.45031166 34.8474301
Use the plotDELP
and plotDE
functions to plot the raw data on the log10-probit and arithmetics scales. Observations with no or 100% affected are plotted using white filled circles (at 0.1 and 99.9% respectively in the log10-probit plot).
Use the predLinesLP
and predLines
functions to add the L-W predicted relations to both plots, with 95% horizontal confidence intervals for the predicted dose to elicit a given percent affected.
plotDELP(mydat)
predLinesLP(fLW)
plotDE(mydat)
predLines(fLW)
Litchfield, JT Jr. and F Wilcoxon. 1949. A simplified method of evaluating dose-effect experiments. Journal of Pharmacology and Experimental Therapeutics 96(2):99-113.