I am conducting a survey analysis where I'm looking at proportions with the svy command. I'm using the Clopper-pearson exact method to compute the 95% CI to avoid negative lower CI value. I am using parmest command to collect the estimates into a dataset to allow further formatting. However, the parmest command stores the CI's using normal approximation method, thus retains the negative CIs.

Does anyone know how to collect the CIs computed by the exact method into a dataset for further formating? here is example dataset:

Code:
* Example generated by -dataex-. For more info, type help dataex
clear
input long id int hlt double wgt
100 0 246.91855815263114
100 2 253.40245825609736
100 1  581.6193429527007
100 1 241.10152061718986
100 0 202.74312589708882
100 0  285.2769528727322
100 2 202.74312589708882
100 2 253.40245825609736
100 2 407.59866234831657
100 1 253.40245825609736
100 2  537.4439106971585
100 0  306.3069956176281
100 2  363.4232300927743
100 1  285.2769528727322
100 2 246.91855815263114
100 2 246.91855815263114
100 2  306.3069956176281
100 2 246.91855815263114
100 2 209.22702600055504
100 2 407.59866234831657
100 2 246.91855815263114
100 2 241.10152061718986
100 2 241.10152061718986
100 1  363.4232300927743
100 0 209.22702600055504
100 2 253.40245825609736
100 2 253.40245825609736
100 0 241.10152061718986
100 2  306.3069956176281
100 0 246.91855815263114
100 0 246.91855815263114
100 2 253.40245825609736
100 1 209.22702600055504
101 1  353.6111718108215
101 1  397.7866040663637
101 0 25.394287114217946
101 1  397.7866040663637
101 2 179.59049120643726
101 2 57.268781730852766
101 1 179.59049120643726
101 0 166.64968898683344
101 0 179.59049120643726
101 1 179.59049120643726
101 0  69.56971936976026
101 1 25.394287114217946
101 1 25.394287114217946
101 2  69.56971936976026
101 1 166.64968898683344
101 1 18.910387010751833
101 0 25.394287114217946
101 2 223.76592346197947
101 2  685.6758644999393
101 0 25.394287114217946
101 2  69.56971936976026
101 0 179.59049120643726
101 0 57.268781730852766
101 1 122.47425673129112
101 2 18.910387010751833
101 . 122.47425673129112
101 2                700
101 2 18.910387010751833
101 2  63.08581926629415
101 0 166.64968898683344
101 2 179.59049120643726
101 1 122.47425673129112
101 1  69.56971936976026
101 0 25.394287114217946
101 0 25.394287114217946
101 1 57.268781730852766
101 2 223.76592346197947
101 1 57.268781730852766
101 0 18.910387010751833
101 2 223.76592346197947
101 2  63.08581926629415
102 2  273.6191333880972
102 2  68.76359693686948
102 1 107.12199165697052
102 2 172.32746665740876
102 0 119.42292929587802
102 1 172.32746665740876
102 1 107.12199165697052
102 1 107.12199165697052
102 2 107.12199165697052
102 2 119.42292929587802
102 2  68.76359693686948
102 1 107.12199165697052
102 2 119.42292929587802
102 2 107.12199165697052
102 2 119.42292929587802
102 2 151.29742391251284
102 0 229.44370113255502
102 1 229.44370113255502
102 2  112.9390291924118
102 1 151.29742391251284
102 2 229.44370113255502
102 2 107.12199165697052
102 1  112.9390291924118
102 0 119.42292929587802
102 2  112.9390291924118
102 2 447.63981399248144
end
label values hlt hlt
label def hlt 0 "good", modify
label def hlt 1 "better", modify
label def hlt 2 "best", modify

proportion hlt [pweight = wgt], over(id) citype(exact)
parmest, format(estimate min95 max95 %8.2f p %8.1e) list(,)

Code:
. proportion hlt [pweight    =    wgt], over(id) citype(exact)

Proportion estimation        Number of obs   =         99

        
        Exact
Proportion        Std. Err.     [95% Conf. Interval]
        
hlt@id
good 100     .2112814        .0693153      .0892338     .388139
good 101      .163164        .0634542      .0655584    .3139537
good 102     .1206884        .0696609      .0268851     .308202
better 100     .2058157        .0790558      .0855425    .3819908
better 101     .3674686        .1088131      .2208986    .5344534
better 102     .2820754        .0934417      .1247649    .4913862
best 100     .5829029        .0901968      .3989938    .7513526
best 101     .4693675        .1192992      .3100112    .6334286
best 102     .5972362        .1059595      .3883384    .7831272

Code:
parmest, format(estimate min95    max95 %8.2f    p %8.1e) list(,)

                            
parm   estimate    stderr    dof           t        p    min95    max95    
                            
1.  0.hlt@100.id       0.21    .06931535    98   3.0481186    3.0e    03    0.07    0.35    
2.  0.hlt@101.id       0.16    .06345415    98    2.571368    1.2e    02    0.04    0.29    
3.  0.hlt@102.id       0.12    .06966087    98    1.732514    8.6e    02    -0.02    0.26    
4.  1.hlt@100.id       0.21    .07905583    98   2.6034227    1.1e    02    0.05    0.36    
5.  1.hlt@101.id       0.37    .1088131    98   3.3770619    1.1e    03    0.15    0.58    
                            
6.  1.hlt@102.id       0.28    .0934417    98   3.0187312    3.2e    03    0.10    0.47    
7.  2.hlt@100.id       0.58    .09019681    98   6.4625664    4.0e    09    0.40    0.76    
8.  2.hlt@101.id       0.47    .11929918    98    3.934373    1.6e    04    0.23    0.71    
9.  2.hlt@102.id       0.60    .10595946    98   5.6364593    1.7e    07    0.39    0.81