hexad: Create hexad binomial family

View source: R/links.R

hexadR Documentation

Create hexad binomial family

Description

Creates af binomial family object with the inverse link function equal to the psychometric function for the unspecified Hexad test.

Usage


hexad()

Value

A binomial family object for models. Among other things it inludes the psychometric function as linkinv and the inverse psychometric function (for direct d-prime computation) as linkfun.

Note

Several functions in this package makes use of functions in the hexad family object, but it may also be used on its own—see the example below.

Author(s)

Karolina Stachlewska

References

Eberhardt, K., Aubry, V., & Robinson, K. (2008). A thurstonian model for the unspecified hexad test. In 2008 Sensometrics Meeting 'Discover a New World of Data' (E-5). Kraft Foods.

See Also

duotrio, triangle, twoAFC, threeAFC, tetrad, twofive, twofiveF, discrim, discrimPwr, discrimSim, AnotA, discrimSS, samediff, findcr

Examples


## Estimating d-prime using glm for an unspecified Hexad test:
xt <- matrix(c(10, 5), ncol = 2) ## data: 10 correct answers, 5 incorrect
res <- glm(xt ~ 1, family = hexad)
summary(res)
## Equivalent to (Estimate and Std. Error):
discrim(10, 15, method="hexad")


## Extended example plotting the profile likelihood
## data: 10 correct answers, 9 incorrect
xt <- matrix(c(10, 9), ncol = 2)
summary(res <- glm(xt ~ 1, family = hexad))
N <- 100
dev <- double(N)
delta <- seq(1e-4, 3, length = N)
for(i in 1:N)
  dev[i] <- glm(xt ~ -1 + offset(delta[i]),
                family = hexad)$deviance
plot(delta, exp(-dev/2), type = "l",
     xlab = expression(delta),
     ylab = "Normalized Profile Likelihood")
## Add Normal approximation:
lines(delta, exp(-(delta - coef(res))^2 /
                 (2 * vcov(res))), lty = 2)
## Add confidence limits:
level <- c(0.95, 0.99)
lim <- sapply(level, function(x) exp(-qchisq(x, df=1)/2) )
abline(h = lim, col = "grey")


sensR documentation built on Nov. 2, 2023, 6:02 p.m.