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 ‘gfilogisreg’ package

The main function of the ‘gfilogisreg’ package is gfilogisreg. It simulates the fiducial distribution of the parameters of a logistic regression model.

To illustrate it, we will consider a logistic dose-response model for inference on the median lethal dose. The median lethal dose (LD50) is the amount of a substance, such as a drug, that is expected to kill half of its users.

The results of LD50 experiments can be modeled using the relation \[ \textrm{logit}(p_i) = \beta_1(x_i - \mu) \] where \(p_i\) is the probability of death at the dose administration \(x_i\), and \(\mu\) is the median lethal dose, i.e. the dosage at which the probability of death is \(0.5\). The \(x_i\) are known while \(\beta_1\) and \(\mu\) are fixed effects that are unknown.

This relation can be written in the form \[ \textrm{logit}(p_i) = \beta_0 + \beta_1 x_i \] with \(\mu = -\beta_0 / \beta_1\).

We will perform the fiducial inference in this model with the following data:

dat <- data.frame(
  x = c(
    -2, -2, -2, -2, -2, 
    -1, -1, -1, -1, -1, 
     0,  0,  0,  0,  0,
     1,  1,  1,  1,  1,
     2,  2,  2,  2,  2
  ),
  y = c(
    1, 0, 0, 0, 0,
    1, 1, 1, 0, 0,
    1, 1, 0, 0, 0,
    1, 1, 1, 1, 0,
    1, 1, 1, 1, 1
  )
)

Let’s go:

library(gfilogisreg)
set.seed(666L)
fidsamples <- gfilogisreg(y ~ x, data = dat, N = 500L)

Here are the fiducial estimates and \(95\%\)-confidence intervals of the parameters \(\beta_0\) and \(\beta_1\):

gfiSummary(fidsamples)
#>                  mean    median        lwr      upr
#> (Intercept) 0.5510683 0.5099083 -0.4386194 1.662866
#> x           0.9153775 0.8728642  0.2119688 1.944350
#> attr(,"confidence level")
#> [1] 0.95

The fiducial estimates are close to the maximum likelihood estimates:

glm(y ~ x, data = dat, family = binomial())
#> 
#> Call:  glm(formula = y ~ x, family = binomial(), data = dat)
#> 
#> Coefficients:
#> (Intercept)            x  
#>      0.5639       0.9192  
#> 
#> Degrees of Freedom: 24 Total (i.e. Null);  23 Residual
#> Null Deviance:       33.65 
#> Residual Deviance: 26.22     AIC: 30.22

Now let us draw the fiducial \(95\%\)-confidence interval about our parameter of interest \(\mu\):

gfiConfInt(~ -`(Intercept)`/x, fidsamples)
#>       2.5%      97.5% 
#> -2.6565460  0.6644137

These 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.