gwhite wrote:There is no bug. The confidence intervals on estimates >0 and <1 are computed using a logit transformation to keep the interval boundaries in the feasible range. So, in your example, the psi estimate is converted to ln[psi/(1-psi)] = 10.52336, with SE = SE(psi)/[psi(1-psi)] = 1.84E-4/[0.999973*(1-0.999973)] = 6.855738. Then, upper and lower bounds are computed as 1/(1+exp(-[10.52336+/-1.96*6.855738])) to give exactly the reported values.
This procedure produces asymetric confidence intervals within the 0-1 interval. However, your example demonstrates that the procedure breaks down when the estimate is close to 1 and the SE approaches zero. The zero SE is the result of the estimated variance of a binomial proportion is p(1-p)/n, and as p approaches either 0 or 1, the variance approaches zero.
The reconstitution that Gary refers to is described in detail in Chapter 7 (the linear models chapter) - see the -sidebar- starting on p. 26 of Chapter 7. It provides a fully worked example of what Gary describes.
As Evan suggests, the appropriate method to compute a confidence interval on a parameter at the boundary is to use the profile likelihood procedure.
The inevitable question that often arises is 'Fine, then why isn't the profile likelihood procedure the default?'. Answer - run a few, see how long they take to compute, then ask yourself the question again.
Given your question, it is probably worth suggesting you fully read Chapter 7 (not just the -sidebar- noted above).